Frage zu Variablen

saua

Grünschnabel
Hallo!

Wieso macht man das so:

PHP:
$text = "bla";
echo "eintrag: ".$text;

obwohls so auch funktioniert:
PHP:
$text = "bla";
echo "eintrag: $text";

Das würde ich ganz gerne mal wissen.
 
Es ist schlicht übersichtlicher... wie du am Syntaxhighligthtning des 1. Beispiels erkennen kannst, wird dort die Variable in der echo-Anweisung hervorgehoben... im 2. nicht.

Man findet sich so besser im Code zurecht.

Besser wäre noch:
PHP:
 $text = 'bla';
echo 'eintrag: '.$text;
der Unterschied zum 1. Beispiel:
Zeichenketten in Singlequotes werden von PHP nicht geparst .... das steigert die Performance(wozu etwas untersuchen, wo es nichts zu untersuchen gibt;))
 
Das mit den Zeichenketten in Singlequotes ist mir bekannt!

Ok danke!



(Dann werd ich wohl noch ein paar Skripte neu überarbeiten dürfen :) )
 
Wie Du selbst schon festgestellt hast, funktioniert beides.
Die erste Variante hat aber folgende Vorteile :) :
  • die Variable ist optisch schneller im Code zu erkennen,
    da die Variable vom Editor erkannt und farbig hervorgehoben wird.
    (Wichtig bei großen Projekten!)
  • die Variable kann später leichter durch einen Array-Wert
    oder eine Objekt-Eigenschaft ersetzt werden (z.B. $Person["Geburtsdatum"])
  • häufig "echot" man auch HTML-Code, der selbst viele doppelte Anführungszeichen benötigt
    z.B. <img src="../images/beispiel.gif" ... >.
    Die Anführungszeichen müsste man aber mit '\' escapen.
    Das sähe dann so aus:
    $HTMLtext = "<img src=\"../images/beispiel.gif\" ... >"
    Wie Du siehst, der Code wird unübersichtlich und in
    komplexeren Beispielen fehleranfällig.
    Lösung: Der String wird mit einfachen Anführungszeichen eingegrenzt.
    Das sieht jetzt so aus $HTMLtext = '<img src="../images/beispiel.gif" ... >'.
    Jetzt kannst Du aber keine Variable mehr einbetten,
    da diese nur innerhalb von "-gequoteten Strings vom Parser verarbeitet werden.
  • außerdem programmieren die meisten Programmierer in verschiedenen Programmiersprachen
    und gewöhnen sich daher an, den Source-Code so zu gestalten,
    dass sie innerhalb der unterschiedlichen Sprachen ähnlich arbeiten können.
Nun ich hoffe, ich habe Dir einige Anregungen gegeben! :)
 
Zurück