Verwendung von assoziativen Arrays
Die einfachste Form für ein assoziatives Array. Man schreibt in die eckigen 
Klammern einfach den Key/Bezeichner, für den Listeneintrag. Ohne einfache (')
und ohne doppelte (") Anführungszeichen. Laut Doku von PHP sollte man allerdings
diese Schreibweise vermeiden, da man evtl. einen Key verwenden könnte, der 
bereits als Konstante definiert ist oder in der weiteren Entwicklung von PHP 
neu hinzu kommt. Würde man so eine Konstante verwenden, wäre das Ergebnis nicht
mehr das, was man erwartet (siehe auch Test 5).

Test 1:
$array[name] = "Text im Array";
echo $array[name]    => Text im Array
echo $array['name']  => Text im Array
echo $array["name"]  => Text im Array
echo "$array[name]"  => Text im Array
echo '$array[name]'  => $array[name]
echo $array[0]       => 


Die folgenden 2 Tests sind der Normalfall für die Verwendung von assoziativen Arrays.
Der Key/Bezeichner wird IN einfachen (') oder doppelten (") Anführungszeichen gesetzt.
Welche Variante man verwendet, ist Geschmackssache.

Test 2:
$array['name'] = "Text in Array";
echo $array[name]    => Text in Array
echo $array['name']  => Text in Array
echo $array["name"]  => Text in Array
echo "$array[name]"  => Text in Array
echo '$array[name]'  => $array[name]
echo $array[0]       => 


Test 3:
$array["name"] = "Text in Array";
echo $array[name]    => Text in Array
echo $array['name']  => Text in Array
echo $array["name"]  => Text in Array
echo "$array[name]"  => Text in Array
echo '$array[name]'  => $array[name]
echo $array[0]       => 


Sehr oft kommt es vor, dass man im Skript, dynamisch auf einen Listeneintrag zugreifen
möchte. In dem Fall weisst man den Key/Bezeichner einer Variablen zu und verwendet diese
anstatt dem "fest geschriebenen" Key/Bezeichner.

Test 4:
$key = "name";
echo $array[$key]    => Text in Array
echo $array['$key']  => 
echo $array["$key"]  => Text in Array
echo "$array[$key]"  => Text in Array
echo '$array[$key]'  => $array[$key]


Und hier nun der Beweis, warum man einen Key nicht ohne Anführungszeichen verwenden soll.
Hier wird eine Konstante definiert, deren Wert 1 ist. Ich habe hier absichtlich ein
negatives Beispiel gewählt, damit der Fehler auch ersichtlich ist.

Test 5:
define( name, "1");
echo $array[name]    => 
echo $array['name']  => Text in Array
echo $array["name"]  => Text in Array
echo "$array[name]"  => Text in Array
echo '$array[name]'  => $array[name]
echo $array[0]       => 


Bitte erst das Gelesene verinnerlichen! Und erst wenn Du dir sicher bist, es verstanden
zu haben weiter lesen