Ankündigung

Einklappen
Keine Ankündigung bisher.

!== ist das gleiche wie == True?

Einklappen

Neue Werbung 2019

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

  • !== ist das gleiche wie == True?

    Hallo zusammen,

    Folgender Befehl in einer Dokumentation oder besesr gesagt Tutorial, verwirrt mich ein bisschen:

    Geht da nicht auch == True, was bedeutend einfacher wäre?^^

    PHP-Code:
            // einlesen der Verzeichnisses
           
    [B] while (($file readdir($handle)) !== false)[/B]
            {
                echo 
    "<li>Dateiname: ";
                echo 
    $file;

                echo 
    "<ul><li>Dateityp: ";
                echo 
    filetype$file );
                echo 
    "</li></ul>\n";
            }
            
    closedir($handle); 

  • #2
    nein == true ginge nicht. Eventuel ginge === true.

    Belies dich über den unterschied von == und === bzw != und !==

    Kommentar


    • #3
      Nein geht es nicht, denn nur wenn readdir fehlt schlägt, liefert er den Wert false zurück, ansonsten liefert er natürlich den Dateinamen des nächsten Files des Verzeichnisses zurück.

      Kommentar


      • #4
        http://www.php.net/manual/de/languag...comparison.php <- nochmal die Unterschiede aufgelistet

        Kommentar


        • #5
          Hallo,
          manche Rückgabewerte sind nicht unbedingt TRUE / FALSE oder typsicher boolsch. !== FALSE ist also nicht zwingend auch === TRUE. Schau dir mal strpos() an, das kann FALSE, 0 oder eine andere Zahl zurückgeben. Hier kannst du beispielsweise nicht die Abfrage umdrehen und auf === TRUE testen, da das nie der Fall sein wird.

          Kommentar


          • #6
            hups.

            Kommentar


            • #7
              Obwohl, == müsste hier ja sogar funktionieren, da der nicht leere String dann zu true gecastet wird ^^. Nur auf Identität (===) darf man dann nicht prüfen

              Kommentar


              • #8
                Welcher Wert wird denn in PHP zuerst gecastet, der linke oder rechte?

                Kommentar


                • #9
                  Zitat von ganter123 Beitrag anzeigen
                  Geht da nicht auch == True, was bedeutend einfacher wäre?^^
                  Nein. Wenn du eine Datei mit dem Namen "0" hättest wäre damit schon schluß.

                  Kommentar


                  • #10
                    Leute, lest das Handbuch!

                    Diese Funktion kann sowohl das boolsche FALSE zurückliefern, als auch einen nicht-boolschen Wert, wie zum Beispiel 0 oder "", der von einem einfachen if-Statement als FALSE ausgewertet wird. Weitere Informationen entnehmen Sie bitte dem Abschnitt über die boolschen Typen. Benutzen Sie deshalb den === Operator, um den Rückgabewert dieser Funktion zu überprüfen.

                    Kommentar


                    • #11
                      Probiers aus:

                      PHP-Code:
                      $test '0';
                      $ziffern '0123456789';

                      echo 
                      'Test mit ===<br />';
                      if ( 
                      strpos($ziffern,$test) === true ) {
                         echo 
                      $test ' ist in ' $ziffern ' enthalten.';
                      } else {
                         echo 
                      $test ' ist NICHT in ' $ziffern ' enthalten.';
                      }
                      echo 
                      '<br />Test mit !==<br />';
                      if ( 
                      strpos($ziffern,$test) !== false ) {
                         echo 
                      $test ' ist in ' $ziffern ' enthalten.';
                      } else {
                         echo 
                      $test ' ist NICHT in ' $ziffern ' enthalten.';


                      ===================================
                      Test mit ===
                      0 ist NICHT in 0123456789 enthalten.
                      Test mit !==
                      0 ist in 0123456789 enthalten.

                      Kommentar


                      • #12
                        Zitat von Wolla Beitrag anzeigen
                        Probiers aus:

                        PHP-Code:
                        $test '0';
                        $ziffern '0123456789';

                        echo 
                        'Test mit ===<br />';
                        if ( 
                        strpos($ziffern,$test) === true ) {
                           echo 
                        $test ' ist in ' $ziffern ' enthalten.';
                        } else {
                           echo 
                        $test ' ist NICHT in ' $ziffern ' enthalten.';
                        }
                        echo 
                        '<br />Test mit !==<br />';
                        if ( 
                        strpos($ziffern,$test) !== false ) {
                           echo 
                        $test ' ist in ' $ziffern ' enthalten.';
                        } else {
                           echo 
                        $test ' ist NICHT in ' $ziffern ' enthalten.';


                        ===================================
                        Test mit ===
                        0 ist NICHT in 0123456789 enthalten.
                        Test mit !==
                        0 ist in 0123456789 enthalten.
                        Danke dir - wie immer eine Klasse für sich ..

                        Kommentar


                        • #13
                          Ja, die Klasse der Handbuchvorleser.

                          Kommentar

                          Lädt...
                          X