kostenloser Webspace werbefrei: lima-city


if false && false && false..

lima-cityForumProgrammiersprachenPHP, MySQL & .htaccess

  1. Autor dieses Themas

    voloya

    voloya hat kostenlosen Webspace.

    Hallo :wave:

    Ich habe 4 Variablen in PHP, die alle false zurückliefern.

    if ($a === false)
    {exit ('blub');}


    Wenn ich aber mehr als eine Variable mit if abfrage tut PHP so, als ob nicht alle Variablen false wären:

    if ($a === false && $b === false && $c === false && $d === false)
    {exit ('blub');}


    Einzeln funktioniert es aber (mit jeder Variable), das macht doch keinen Sinn? Mache ich etwa etwas bei der Syntax falsch? Die Variablen wurden übrigens mit strpos "gefüllt", bzw. eben nicht (string kommt nicht vor).

    Komm' einfach nicht drauf. :slant:

    mfg :wave:
  2. Diskutiere mit und stelle Fragen: Jetzt kostenlos anmelden!

    lima-city: Gratis werbefreier Webspace für deine eigene Homepage

  3. hackyourlife

    Moderator Kostenloser Webspace von hackyourlife

    hackyourlife hat kostenlosen Webspace.

    Interessant, denn das funktioniert wie erwartet:
    <?php
    
    header('content-type: text/plain');
    
    $a = false;
    $b = false;
    $c = false;
    $d = false;
    
    var_dump($a);
    var_dump($b);
    var_dump($c);
    var_dump($d);
    
    if($a === false && $b === false && $c === false && $d === false) {
    	exit('blub');
    }
    
    exit('gluck');
    Eventuell mal die Variablen mit
    var_dump()
    ausgeben und schauen ob die überhaupt den richtigen Wert (
    bool(false)
    ) haben…
  4. Versuch es mal so:
    $a = false;
    $b = false;
    $c = false;
    $d = false;
    if($a == false and $b == false and $c == false and $d == false) { //=== fragt auch ab, ob der Stringtyp gleich ist, == fragt nur den Inhalt ab
      echo "alle Variabeln sind false";
    }

    Guck dir vielleicht nochmal das hier an, da wird das nochmal etwas genauer erklärt (Scrall mal runter bis zum ersten "Hinweis")
    Ich hoffe, ich konnte helfen.
    MFG THWBM
  5. hackyourlife

    Moderator Kostenloser Webspace von hackyourlife

    hackyourlife hat kostenlosen Webspace.

    thwbm schrieb:
    Versuch es mal so:
    $a = false;
    $b = false;
    $c = false;
    $d = false;
    if($a == false and $b == false and $c == false and $d == false) { //=== fragt auch ab, ob der Stringtyp gleich ist, == fragt nur den Inhalt ab
      echo "alle Variabeln sind false";
    }

    Guck dir vielleicht nochmal das hier an, da wird das nochmal etwas genauer erklärt (Scrall mal runter bis zum ersten "Hinweis")
    Ich hoffe, ich konnte helfen.
    MFG THWBM
    Was aber zu einem anderen Ergebnis führt, da
    strpos()
    auch
    0
    zurückgeben kann, was von deinem Code als "nicht gefunden" interpretiert werden würde.

    Mittlerweile wurde das Problem aber schon gelöst ;-)
  6. Autor dieses Themas

    voloya

    voloya hat kostenlosen Webspace.

    Hallo :wave:

    hackyourlife schrieb:
    Mittlerweile wurde das Problem aber schon gelöst ;-)


    Ja, es wurde gelöst. Du hättest ruhig auch die Lösung angeben können. :P

    Es lag am Webserver auf dem lighttpd mit php5-fpm läuft. Nach einem Neustart von php5-fpm war alles gut. An sowas denkt doch keiner. :wow:

    Es geht übrigens mit regular expressions wesentlich kürzer, wie hackyourlife mir in seiner Güte gezeigt hat. Danke nochmal. :thumb:

    mfg :wave:
  7. hackyourlife schrieb:
    Was aber zu einem anderen Ergebnis führt, da
    strpos()
    auch
    0
    zurückgeben kann, was von deinem Code als "nicht gefunden" interpretiert werden würde.

    Ok, das wusste ich nicht. Auch wenn das problem bereits gelöst wurde möchte ich mich jetzt hier verbessern:
    $a = false;
    $b = false;
    $c = false;
    $d = false;
    if($a == false or $a == 0) {
      if($b == false or $b == 0) {
        if($c == fase or $c == 0) {
          if($d == false or $d == 0) {
            echo "alle Variabeln sind entweder false oder 0.";
          }
        }
      }
    }

    MFG THWBM
  8. Diskutiere mit und stelle Fragen: Jetzt kostenlos anmelden!

    lima-city: Gratis werbefreier Webspace für deine eigene Homepage

Dir gefällt dieses Thema?

Über lima-city

Login zum Webhosting ohne Werbung!