Im Gegensatz zu „normalen” Variablen können die zu Array-Schlüsseln gehörenden Werte nicht immer ohne weiteres per echo() ausgegeben werden:
Beim Ausgeben von mehrdimensionalen Arrays macht die normale Schreibweise also Probleme.
Behoben werden kann das auf zwei Wegen: Entweder man umgibt das Array an dieser Stelle im String mit geschweiften Klammern
oder man unterbricht den String:
Verwendet man einfache Anführungszeichen, dann kann die Schreibweise mit geschweiften Klammern nicht verwendet werden, wodurch
nur die Verknüpfung mehrerer Strings übrig bleibt.
PHP-Code
<?php $var = 'Januar'; $monate1 = array('Januar', 'Februar', 'Maerz'); $monate2 = array('jan'=>'Januar', 'feb'=>'Februar', 'ma'=>'Maerz'); $monate3 = array( 'anfang'=>array(Januar, Februar), 'ende'=>array('November', 'Dezember') ); echo("Der erste Monat des Jahres ist der $var.\n"); // erzeugt: Der erste Monat des Jahres ist der Januar. echo("Der erste Monat des Jahres ist der $monate1[0].\n"); // erzeugt: (...) Januar. //echo("Der erste Monat des Jahres ist der $monate2['jan'].\n"); // Fatal Error echo("Der erste Monat des Jahres ist der $monate2[jan].\n"); // kein Fatal Error, obwohl diese Schreibweise schlechter Stil ist; erzeugt: (...) Januar. echo("Der erste Monat des Jahres ist der $monate3[anfang][0].\n"); // erzeugt: (...) Array[0]. // wird das Array nicht in einem String eingebettet, dann kann es ohne Probleme ausgegeben werden: echo($monate3['anfang'][0]); // erzeugt: Januar ?>
Ausgabe
Der erste Monat des Jahres ist der Januar. Der erste Monat des Jahres ist der Januar. Der erste Monat des Jahres ist der Januar. Der erste Monat des Jahres ist der Array[0]. Januar
Beim Ausgeben von mehrdimensionalen Arrays macht die normale Schreibweise also Probleme.
Behoben werden kann das auf zwei Wegen: Entweder man umgibt das Array an dieser Stelle im String mit geschweiften Klammern
oder man unterbricht den String:
PHP-Code
<?php $monate3 = array( 'anfang'=>array(Januar, Februar), 'ende'=>array('November', 'Dezember') ); // Mit geschweiften Klammern echo("Der erste Monat des Jahres ist der {$monate3['anfang'][0]}.\n"); // String unterbrechen bzw. mehrere Strings verknüpfen echo("Der erste Monat des Jahres ist der ".$monate3['anfang'][0]."."); ?>
Ausgabe
Der erste Monat des Jahres ist der Januar. Der erste Monat des Jahres ist der Januar.
Verwendet man einfache Anführungszeichen, dann kann die Schreibweise mit geschweiften Klammern nicht verwendet werden, wodurch
nur die Verknüpfung mehrerer Strings übrig bleibt.
PHP-Code
<?php $monate3 = array( 'anfang'=>array(Januar, Februar), 'ende'=>array('November', 'Dezember') ); // Mit geschweiften Klammern echo('Der erste Monat des Jahres ist der {$monate3[anfang][0]}.'); echo("\n"); // String unterbrechen bzw. mehrere Strings verknüpfen echo('Der erste Monat des Jahres ist der '.$monate3['anfang'][0].'.'); ?>
Ausgabe
Der erste Monat des Jahres ist der {$monate3[anfang][0]}. Der erste Monat des Jahres ist der Januar.