Es gibt eine vordefinierte Funktion error_log() zum Erzeugen von Meldungen.
Damit kann man erstens verfolgen, durch welche Codeteile das Programm gelaufen ist.
Zweitens kann man sich den Inhalt von Variablen ausgeben lassen.

Der erste Parameter enthält die eigentliche Fehlermeldung.
Der zweite Parameter kann diese Werte haben:
0 Ausgabe der Fehlermeldung auf die Standardfehlerdatei; in der Regel xampp/apache/logs/error.log
1 Fehler wird per E-Mail verschickt; in der Regel abgeschaltet.
3 Fehler wird auf eine private Datei ausgegeben; im Beispiel error.log

Die Wirkung von error_log() können Sie nur sehen, wenn Sie error_log() auf Ihrem eigenen Rechner testen. Denn hier würde error_log() auf Dateien ausgeben, die Sie nicht einsehen können.



$a = "hugo";
$b = "hugo ";
error_log("Die Variable \$a hat den Wert ***$a***.\n",3,"error.log");
error_log("Die Variable \$b hat den Wert ***$b***.\n",3,"error.log");
if ($a == $b) {
error_log("Der Wert der Variablen \$a stimmt mit dem Wert der Variablen \$b überein.\n",3,"error.log");
} else {
error_log("Der Wert der Variablen \$a stimmt nicht mit dem Wert der Variablen \$b überein.\n",3,"error.log");
}


Sie haben natürlich in diesem einfachen Beispiel sofort gesehen, daß das Programm
durch den else-Block läuft; denn $a enthält 4 Zeichen, $b dagegen 5.
Der Wert der kritischen Variablen $a wird ebenfalls gezeigt.

$buchstaben = range('a', 'z');
error_log('Die Variable $buchstaben hat den Wert ***$buchstaben***. ',3,'error.log');
error_log('Die Variable $buchstaben[0] hat den Wert ***$buchstaben[0]***. ',3,'error.log');
error_log('Die Variable $buchstaben[25] hat den Wert ***$buchstaben[25]***. ',3,'error.log');


Weiter?