Selbst erfahrene Programmierer machen bei der Programmierung zwangsläufig Fehler. Fehlermeldungensind nicht nur nutzlos, sondern oft auch frustrierend, wenn der Entwickler sie nicht bemerken und nicht verstehen kann, was die Compiler-Fehlermeldung bedeutet. Ein besseres Verständnis von Fehlermeldungen kann daher helfen, erheblich Zeit beim Suchen und Korrigieren fehlerhafter Inhalte zu sparen.
Variable Deklaration: Wenn Sie eine Variable in einer Anweisung wie folgt deklarieren: $var = 'value'; der Compiler findet zuerst den Wert der rechten Hälfte der Anweisung , ist es dieser Teil der Anweisung, der häufig Fehler verursacht. Wenn Sie eine falsche Syntax verwenden, erhalten Sie einen Parsing-Fehler.
Zum Beispiel Parse-Fehler: Parse-Fehler, unerwartetes T_
WHILE in c:program filesapache groupapachehtdocsscript.php in Zeile 19 Die Parsing-Fehler kamen immer wieder nacheinander und PHP stoppte die Ausführung des Skripts nach dem ersten Parsing-Fehler jedes Mal, wenn der vorherige Fehler festgestellt wurde. Außerdem enthalten Parsing-Fehler nur sehr wenige Informationen, und die Zeilennummer, in der der Fehler aufgetreten ist, wird fast nicht gemeldet. Beispielsweise werden im Ausdruck
vordefinierte Schlüsselwörter verwendet, zum Beispiel: while = 10; while ist ein vordefiniertes Schlüsselwort, dem kein Wert zugewiesen werden kann. Zu den vordefinierten Schlüsselwörtern gehören while, function usw. Wir können diese vordefinierten Schlüsselwörter nicht zum Benennen von Variablen verwenden, da der Compiler sonst einen Fehler meldet. Unter diesen steht T_IF für if(), T_WHILE für while(), T_FOR für for() usw. Häufige Fehler:
fehlende Anführungszeichen in der Zeichenfolge
usw. Darüber hinaus gibt es keine Verwendung von geschweiften Klammern (}), um eine Funktion oder eine Schleife zu beenden, zum Beispiel: function UselessFunction() {for($ i < 0; $i < 10; $i++){
} in Zeile 9
Da die Funktion UselessFunction nicht mit einer geschweiften Klammer (}) endet, sucht der PHP-Compiler weiterhin nach der schließenden Klammer, bis er das Ende der Datei erreicht. Da der Compiler keine passende geschweifte Klammer findet, meldet er einen Dateiendefehler.
Wenn die Hierarchie des Codes korrekt wiedergegeben wird, werden Fehlermeldungen sehr deutlich. Andernfalls ist es sehr schwierig, den Code zu debuggen. Geben Sie daher unbedingt die hierarchische Struktur des Codes an, um späteren Entwicklern die Verbesserung des Codes zu erleichtern.
MySQL
Fehler:
Eine andere Art von Fehlermeldung ist der MySQL-Fehler, der PHP-Neulingen oft Kopfschmerzen bereitet, wie zum Beispiel: Warnung: Das angegebene Argument ist kein gültiges MySQL result resource in...
mysql_fetch_array($result)) {} Der Parameter $result ist ungültig Ressource, da Abfrage
fehlgeschlagen ist und mysql_fetch_array nicht verarbeitet wird. Jede Abfrage mit ungültiger Syntax oder fehlgeschlagener Verbindung zur Datenbank sollte in der MySQL-Konsole getestet werden. Weitere einfache Fehler
Beachten Sie den Unterschied zwischen echo
Beachten Sie den Unterschied zwischen leerer Zeichenfolge ('') und NULL:
Sowohl leere Zeichenfolgen als auch NULL werden in PHP mit dem Wert 0 gespeichert, aber Ihre Typen sind nicht gleich. Ersteres ist
Unterscheiden Sie den Unterschied zwischen == (gleich UND) und === (kongruent UND):
Beide gehören zum Vergleichsoperator , == (gleich) Es vergleicht nur, ob die Werte gleich sind, während === (alle gleich) nicht nur vergleicht, ob die Werte gleich sind, sondern auch, ob die Typen gleich sind, was strenger ist.
Unterscheiden Sie den Unterschied zwischen include und require: Die Funktionen von
include() und require() sind grundsätzlich gleich, Aber in der Verwendung gibt es auch einige Unterschiede: include() ist eine bedingte Einschlussfunktion, während require() eine bedingungslose Einschlussfunktion ist. Wenn beispielsweise im folgenden Code die Variable $a wahr ist, wird die Datei a.php eingebunden: if($a){
include("a.php");
}
Und require() unterscheidet sich von include(), egal welchen Wert $a annimmt, der folgende Code schließt die Datei a.php ein:
if($a){
require( "a .php");
}
Im Hinblick auf die
Fehlerbehandlung verwenden Sie die Include-Anweisung. Wenn ein Include-Fehler auftritt, überspringt das Programm die Include-Anweisung angezeigt wird, wird das Programm weiter ausgeführt. Die require-Anweisung führt jedoch zu einem schwerwiegenden Fehler.
set und empty: empty bestimmt, ob eine Variable „leer“ ist, während isset bestimmt, ob eine Variable „leer“ ist wurde eingerichtet.
Beim Zugriff auf Mitgliedsvariablen oder -methoden in einer PHP-Klasse, wenn darauf durch
Wenn eine Variable oder Methode als const (Konstante) oder statisch (statischesAttribut) deklariert ist, dann ist die Domänenoperation Es muss der Operator :: verwendet werden. Wenn die referenzierte Variable oder Methode nicht als const oder static deklariert ist, verwenden Sie den Zeigeroperator ->.
Das obige ist der detaillierte Inhalt vonPHP-Fehleranalyse. Für weitere Informationen folgen Sie bitte anderen verwandten Artikeln auf der PHP chinesischen Website!