echo mit Anführungszeichen “ und Hochkomma ‚

Den echo-Befehl kann man mit Anführungszeichen und mit Hochkommata nutzen. Also beides ist möglich:

<?php
	echo "Hallo Welt";
	echo 'Hallo Welt';
?>

Unterschied zu Variante 1 (Anführungszeichen „) und Variante 2 (Hochkomma ‚)

Unterschied 1 – mit Backslash Zeichen entwerten

Möchtest du in Variante 1 innerhalb deiner Ausgabe ein Anführungszeichen verwenden, musst du dieses extra „escapen“ mit dem Backslash-Zeichen:

<?php
	echo "...und er sagte es wäre \"wenig\" Arbeit";
?>

Da PHP in dieser Variante die „-Zeichen dazu benutzt, den String einzugrenzen, müssen wir die Zeichen innerhalb des Strings mit einem Backslash „entwerten“, ansonsten würden wir einen Fehler erhalten. In Variante 2 ist das nicht nötig, da zum eingrenzen das Hochkomma genutzt wird. Möchten wir aber innerhalb des Strings Hochkomma ausgeben, müssen wir die wiederum entwerten. Nach meiner Erfahrung braucht man aber häufiger das Anführungszeichen als das Hochkomma, deshalb nutze ich Variante 2.

Unterschied 2 – Variablen im String

Du kannst Variablen innerhalb des Strings in Variante 1 packen und PHP wird automatisch den Wert einfügen:

<?php
	$name = "Marie";
	
	echo "Ich heiße $name";
?>

In Variante 2 würdest du mit dieser Methode folgende Ausgabe erhalten: Ich heiße $name
Ich finde es allerdings unsauber, Variablen direkt in den String zu packen. Meiner Meinung nach sollte man Variablen mit dem String konkatenieren, dass macht den Code deutlich lesbarer und verständlicher:

<?php
	$name = "Marie";
	
	echo 'Ich heiße '.$name;
?>

Fazit

Ich bevorzuge die Hochkomma-Variante, da ich sie sauberer finde, aber es ist geschmackssache. Meine gründe dafür sind:

  • Ich schreibe Variablen eh nicht direkt in den String (weil ich es für „unsauberen“ Code halte)
  • Ich muss in einem String die Anführungszeichen mit Backslash entwerten

Andererseits kommt es auch auf den Einzelfall an. Du wirst in den folgenden Kapiteln häufig sehen, dass ich anstelle von Hochkommata auf Anführungszeichen zurückgreife. Es ist halt geschmackssache ;)

hier geht's weiter...



Feedback Formular