Ankündigung

Einklappen
Keine Ankündigung bisher.

if statement mit and/or

Einklappen

Neue Werbung 2019

Einklappen
X
  • Filter
  • Zeit
  • Anzeigen
Alles löschen
neue Beiträge

  • if statement mit and/or

    hi leute,

    ich stehe gerade bei einem problem.

    ich möchte 2 variablen vergleichen wenn sie leer sind - aber es reicht wenn sowohl eine, als auch die andere leer ist oder beide zusammen.

    ich dachte mir, dass dies so funktioniert:

    PHP-Code:
    <?php
    if ($a =='' && $b=='' || $a || $b
    {...}
    ?>
    mein problem ist eben dass ich prüfen möchte, ob $a und $b leer sind und dann wiederum kann es auch sein dass $a oder $b leer sind.

    in der hoffnung auf hilfe,

    lg schnurzli


  • #2
    Hi
    falls ich dich richtig verstehe
    PHP-Code:
    <?php
    if ($a=='' && $b=='') {

    } elseif(
    $a=='' || $b==''){

    }
    ?>
    //edit: das elseif ist natürlich ein "wort2"

    Kommentar


    • #3
      Hallo,

      vielleicht kann dir das auch helfen:


      PHP-Code:
      <?php
      if (empty($a) && empty($b)) OR  (empty($a) || empty($b))

      führe aus... };
      ?>

      Kommentar


      • #4
        smartdragon, das ergibt keinen Sinn bzw. ist das gleiche wie

        PHP-Code:
        <?php
        if (empty($a) || empty($b)) {
          
        // ..
        ?>

        [1] ich möchte 2 variablen vergleichen wenn sie leer sind
        [2] aber es reicht wenn sowohl eine, als auch die andere leer ist oder beide zusammen.
        1) Wenn beide leer sind und du sie vergleichst kommt immer true heraus
        2) "sowohl als auch" ist das selbe wie "beide zusammen"

        http://www.lugbz.org/documents/smart...html#writewell

        Kommentar


        • #5
          Zitat von smartdragon
          PHP-Code:
          <?php
          if (empty($a) && empty($b)) OR  (empty($a) || empty($b))

          führe aus... };
          ?>
          Dass manchen Leuten AND und OR besser gefällt als && und || kann ich mir ja vorstellen, aber wieso kommt man auf die idee &&, OR und || zusammen zu verwenden?
          http://www.silvercoding.de
          ------------
          ElePHPant Edit

          Kommentar


          • #6
            Stimmt , war da wohl in gedanken.... die Lsg. kann nur die von -->bigJay<-- sein...

            @konsti

            das mach ich manchmal weger Übersicht :wink:

            Kommentar


            • #7
              naja- eigentlich möchte ich so kontrollieren ob 2 zellen oder zumindest eine von beiden aus einer mysql datenbank leer sind...

              ich werde gleich mal eure vorschläge probieren. so ähnlich bin ich es auch angegeangen nur hatte ich es nicht genauso wie ihr... mal schauen obs funkt.

              vielen dank für die schnellen antworten

              nachtrag: ->bigJay<-'s vorschlag hat funktioniert...

              der einzige nachteil ist, dass ich sowohl bei einer übereinstimmung als auch wenn beide variablen leer sind, den selben code ausführe... somit habe ich bei if und bei elseif das selbe stehen. das kann man nehme ich an nicht in eine abfrage stellen oder?

              Kommentar


              • #8
                Warum denn so umständlich?
                Kurzer Blick ins Manual genügt:

                OR trifft zu wenn entweder beide Bedingungen wahr sind oder eine der beiden Bedingungen wahr ist. Das heißt if (empty($var1) OR empty($var2)) reicht völlig aus. Der Rest ist komplett unnötig.

                Kommentar


                • #9
                  Re: if statement mit and/or

                  Zitat von schnurzli
                  ...aber es reicht wenn sowohl eine, als auch die andere leer ist oder beide zusammen.
                  ob beide zusammen leer sind, ist ja egal wenn es ausreicht, das nur eine leer sein braucht. :wink:

                  Kommentar


                  • #10
                    Natürlich, aber er wollte eine Bedingung die genau das abfragt.
                    Aber wurde auch schon oben von Zergling beantwortet, hab ich überlesen.

                    Kommentar

                    Lädt...
                    X