Fehler finden und beheben für Anfänger

Als PHP Anfänger macht man in der Regel folgende Fehler am häufigsten:

  • Semikolon vergessen
  • normale/geschweifte Klammer nicht geschlossen
  • Array Größe überschritten (z.b. in einer Schleife)
  • Vergessen, dass das 1. Array-Element an der 0. Stelle beginnt
  • Dollar-Zeichen am Anfang einer Variable vergessen (statt „$zahl“ => „zahl“)
  • Logische Fehler (Endlosschleife, falsche Programmlogik, etc.)

Wie kann man solche Fehler vermeiden?

Leider ist hier fast der einzige Weg Praxis. Wer häufig den selben Fehler macht, wird über kurz oder lang diesen Fehler so gut wie nicht mehr machen. Neben Praxis hilft aber auch ein gut strukturierter Quellcode:

<?php
	//unübersichtlich
	if($zahl < 100) { $zahl++; $zahl += $zahl2 - 14; } else { $zahl = 0; }
?>
<?php
	//besser
	if($zahl < 100) 
	{ 
		$zahl++; 
		$zahl += $zahl2 - 14; 
	} 
	else 
	{ 
		$zahl = 0; 
	}
?>

Zusätzlich zu einem gut strukturierten Quellcode empfiehlt sich aufjedenfall der Einsatz eines Editors mit Syntaxhighlighting. Dieser macht den Quellcode nochmals leichter zu überblicken und man kann durch farbliche Hervorhebung schnell erkennen, wenn man vergessen hat eine Klammer oder einen String zu schließen.

Einfaches Debugging in PHP

Semikolon und vergessene Klammern lassen sich recht leicht finden, da PHP die Datei und die Zeilennummer angibt, in welcher der Fehler vorkommt. Doch manchmal läßt sich der Fehler trotz der Angabe nicht finden oder es handelt sich um einen logischen Fehler (dein Code arbeitet nicht so, wie du es gerne hättest).

Logische Fehler können z.b. Endlosschleifen sein, falsche/fehlende Array-Werte oder dein Quellcode spuckt einfach etwas aus, was du so nicht erwartet hast. Nun heißt es den Code Zeile für Zeile durchzugehen und an den jeweiligen Stellen die Variablen auszugeben (um zu schauen, welchen Wert sie haben). Ein Array kannst schön formatiert folgendermaßen ausgeben:

<?php
	echo '<pre>';
	print_r($array);
	echo '</pre>';
?>

Als letzter Tipp, bei Fehlermeldungen die du nicht direkt verstehst, empfiehlt sich nach dem Fehler zu googlen: Wenn PHP eine Fehlermeldung ausspuckt, einfach komplett kopieren (ohne Pfadangaben, Zeilenangaben, weil zu spezifisch) und in Google mit Anführungszeichen einfügen. Meist erhält man dadurch genügend Links, die das Problem schon behandelt haben und eine Lösung anbieten.

hier geht's weiter...



Feedback Formular