Heute habe ich gesehen, dass Caterpillar für alle zwischen leeren Zeichenfolgen und NULL unterschieden hat ( http://bbs.phpchina.com/thread-99574-1-2.html ). Ich habe das Gefühl, dass ich kein solides Verständnis für die Grundlagen habe Wissen (wie ich) war sehr hilfreich. Es war spät in der Nacht, als ich viele „maßgebliche Informationen“ überprüfte und sie hier veröffentlichte, um allen beim Erlernen der Grundlagen zu helfen Nicht streng und der Inhalt war nur eine persönliche Zusammenfassung. Wenn es Mängel gibt, fügen Sie bitte weitere Experten hinzu. Der Haupttext lautet wie folgt:
1. Der Unterschied zwischen Echo und Print
in PHP im Grunde das Gleiche (Ausgabe), aber es gibt immer noch subtile Unterschiede zwischen den beiden. Nach der Echo-Ausgabe gibt es keinen Rückgabewert, aber print hat einen Rückgabewert und gibt false zurück, wenn die Ausführung fehlschlägt. Daher kann es als normale Funktion verwendet werden. Nach der Ausführung des folgenden Codes ist der Wert der Variablen $r beispielsweise 1.
Code:
$r = print „Hello World“;
Dies bedeutet, dass print in einigen komplexen Ausdrücken verwendet werden kann, echo jedoch nicht. Da für die Echo-Anweisung jedoch keine Rückgabe eines Werts erforderlich ist, wird die Echo-Anweisung im Code etwas schneller ausgeführt als die Print-Anweisung.
2. Der Unterschied zwischen
include () und require () ist grundsätzlich gleich (include), es gibt jedoch einige Unterschiede in der Verwendung. include () ist eine bedingte Einschlussfunktion, während require () eine ist bedingungslose Inklusionsfunktion. Wenn beispielsweise im folgenden Code die Variable $a wahr ist, wird die Datei a.php eingebunden:
Code:
if($a){
include("a.php");
}
Allerdings unterscheidet sich require() von include(). Unabhängig vom Wert von $a bindet der folgende Code die Datei a.php in die Datei ein:
Code:
if($a){
require("a.php");
}
Bezüglich der Fehlerbehandlung verwenden Sie die Include-Anweisung. Wenn ein Include-Fehler auftritt, überspringt das Programm die Include-Anweisung. Das Programm wird jedoch weiterhin ausgeführt. Aber require gibt Ihnen einen schwerwiegenden Fehler.
Natürlich können wir Qifen auch wörtlich verstehen: erfordern bedeutet eine sehr starke Bitte oder Aufforderung.
3. Die Anweisungen „require_once()“ und „include_once()“
gehören nicht zum Thema, da sie ähnlich aussehen. Die einfachen Anweisungen „require_once()“ und „include_once()“ entsprechen den Anweisungen „require()“ bzw. „include()“. Die Anweisungen require_once() und include_once() werden hauptsächlich verwendet, wenn mehrere Dateien eingebunden werden müssen, wodurch der Fehler der wiederholten Definition von Funktionen oder Variablen, der durch das Einschließen desselben Codeteils verursacht wird, effektiv vermieden werden kann.
4. Der Unterschied zwischen leerem String ('') und NULL.
In PHP werden sowohl leerer String als auch NULL mit dem Wert 0 gespeichert, aber ihre Typen sind unterschiedlich. Sie können echo gettype(''); NULL); Sie werden feststellen, dass es sich bei dem Ausdruck um einen String bzw. um einen Wert von NULL handelt. Sie können versuchen, den Typ echo gettype(0) auszudrucken. Ganzzahl). Es ist ersichtlich, dass Zeichenfolge (''), NULL und 0 „gleiche Werte“, aber keine gleichen Typen sind.
5.! Der Unterschied zwischen isset und empty
kann aus der wörtlichen Bedeutung verstanden werden: empty soll bestimmen, ob eine Variable „leer“ ist, während isset bestimmen soll, ob eine Variable gesetzt wurde. Hier müssen Sie jedoch auf eines achten: Wenn der Wert einer Variablen 0 ist, betrachtet empty die Variable als leer, dh sie entspricht keiner Einstellung. Wenn wir beispielsweise die Variable $id erkennen und $id=0 ist, verwenden wir empty und isset, um zu erkennen, ob die Variable $id konfiguriert wurde. Beide geben unterschiedliche Werte zurück: empty geht davon aus, dass sie nicht konfiguriert ist, und isset kann abgerufen werden Sehen Sie sich den Wert von $id an:
Code? :
$id=0;
empty($id)?print „Ich bin leer“:print „Ich bin $id.“ //Ergebnis: Ich bin leer
!isset($id)?print „Ich bin leer“:print „Ich bin $id.“;//Ergebnis: Ich bin 0
6. Der Unterschied zwischen == (gleich) und === (gleich).
Sehen Sie sich den Unterschied zwischen der vierten leeren Zeichenfolge ("") und NULL oben an und schauen wir uns ein Beispiel an:
Code:
'' == NULL;
'' === NULL;
Nach dem Ausführen werden Sie feststellen, dass das erste wahr und das zweite falsch ist! Es ist ersichtlich, dass == nur vergleicht, ob die Werte gleich sind, während === nicht nur die Werte, sondern auch die Typen vergleicht, was strenger ist.