Gute Folien + Infos hier: deklarieren/initialisieren (PDF)

Variablen in PHP deklarieren?

PHP ist eine Typ-schwache Programmiersprache, denn:

dass der PHP-Interpreter die Typen der Variablen selbst festlegt. Dies macht es einerseits für Anfänger leichter, da diese sich keine Variablentypen merken müssen, andererseits führt es aber auch dazu, dass Variablentypen aus Versehen geändert werden können und der Programmierer nichts davon merkt. Generell sollte man den Typen einer Variable zur Laufzeit (also im Quellcode) nicht ändern, sondern notfalls eine neue Variable anlegen, welche die alte Variable beinhaltet aber vom anderen Typ ist. (Wikibooks – PHP: Variablen)

In PHP müssen Variablen nicht notwendigerweise deklariert und initialisiert werden. Bei der ersten Verwendung einer Variable initialisiert und deklariert PHP diese Variable automatisch mit einer NULL-Referenz, das bedeutet eigentlich nichts anderes, als dass die Variable keinen Inhalt besitzt.

Explizite Initialisierung

Eine explizite Deklaration und Initialisierung lässt sich natürlich ebenfalls machen und wird im Allgemeinen auch als saubere Programmierung betrachtet. Dabei wird allen Variablen vor ihrem ersten möglichen(!) Auftreten entweder ein neutraler oder ein Standard-Wert zugewiesen. Dies kann zum Beispiel am Anfang der Datei oder vor einer Schleife sein, in der die Variable verwendet werden soll. Die Zuweisung erfolgt generell über den Zuweisungsoperator =.

$variable = 0; // Deklaration und Initialisierung als INTEGER (Ganzzahl)
$text = “”; // string (Zeichenkette)

Die Variable $variable wird mit dem Wert 0 initialisiert. Die Variable $text wird mit einem leeren String initialisiert. (Wikibooks – PHP: Variablen)

Unterschied: Deklaration, Initialisierung

Deklaration
Angeben, dass es eine Variable gibt: Ein Name (für eine Variable) wird eingeführt. In C++ z.B. void foo();. In PHP geht das nur mittelbar durch Initialisierung.

Initialisierung
Einer (noch leeren) Variable wird ein Wert zugewiesen: $i = 5.

Deklarierung und Initialisierung geschehen also in einem Schritt.

 

Erklären Sie den Unterschied zwischen “deklarieren” und “initialisieren”.