dedlfix: While Syntax falsch?

Beitrag lesen

echo $begrüßung;

Noch etwas anderes das mir Zend Studio auch angemeckert hatte.

Was konkret wirft es dir denn vor?

Ich habe an ein paar Stellen im Code bei manchen Variablen folgendes gemacht:
if(!isset($webadmin)){
  $webadmin = NULL;
}
oder
if(!isset($_SESSION['sel_SelectFront_s'])){
$_SESSION['sel_SelectFront_s'] = NULL;
}
ist das schlechter Programmierstil oder kann man es lassen?

Grundsätzlich ist es eine gute Idee, Variablen vor dem Erstgebrauch definiert zu initialisieren. Bei von PHP vor dem Scriptstart gesetzten Variablen ($_GET, $_POST, usw.) kann man dies nur nach einer Existenzprüfung machen, sonst überschreibt man sich ja den Wert. Der Sinn der Prüfung auf $webadmin erschließt sich mir ohne Zusammenhang nicht. Über selbst erstellte Variablen sollte man schon den Überblick behalten und nicht erst fragen müssen, ob man sie schon mal erstellt hat. Wenn die Erzeugung aufgrund von register_globals erfolgte, hast du ab spätestens PHP 6 ein Problem, weil es dieses Feature dann nicht mehr gibt. Auch andere Mechanismen, die unkontrolliert Variablen erzeugen sind nicht besser. Ebenso schlecht ist das Umkopieren aus einem der EGPCS-Arrays in einfache Variablen. Ein isset($foo) liefert zwar nach einem $foo = $_GET['foo']; bei nicht vorhandenem foo-Element ebenfalls false, das aber nur, weil die Zuweisung NULL zuweist und isset() bei NULL an eine Nichtexistenz glaubt. Doch das hast du sicher nicht gemacht, denn dafür hättest du ja eine Notice-Meldung kassiert.

echo "$verabschiedung $name";