doppelte oder einfache anführungszeichen?

caramba12321

blödefragensteller
Hallo ich habe mich grade mal gefragt wann man doppelte- und wann mann einfache Anführungszeichen setzten soll.
Wenn mann eine Variable oder eine Konstante nimmt dann noch "" oder?
wie wäre es denn z.B. hier:
explode(‘/’, $_SERVER[‘REQUEST_URI’]);

Ist das so korrekt?
Mir ist durchaus bewusst das der Parser strings usw die in einfachen Anführungszeichen stehen schneller parsed weil er nicht nach dynamischen Inhalt guckt.

GIbt da so eine allgemeine Regel?

Gruss
Caramba
 
Ja das genannte Beispiel ist korrekt. Aber auch doppelte Anführungsteichen können dort eingesetzt werden. Der Unterschied beider Schreibweisen ist ganz einfach, dass die doppelten im Gegensatz zu den einfachen noch zusätzlich nach Variablenvorkommen und anderen speziellen Zeichenfolgen durchsucht und diese entsprechend ersetzt werden.
 
Der Unterschied zwischen beiden Schreibweisen ist gar nicht so groß wie viele meinen. Benchmark-Tests zeigen sogar, dass die Schreibweise mit doppelten Anführungszeichen schneller ist.

Ich finde das Ganze, ob nun einfache oder doppelte Anführungszeichen schneller sind, aufgrund der geringen Unterschiede übrigens als Augenwischerei. Da gibt es andere Tricks, die weit aus größere Auswirkungen haben.
 
Der Unterschied zwischen beiden Schreibweisen ist gar nicht so groß wie viele meinen. Benchmark-Tests zeigen sogar, dass die Schreibweise mit doppelten Anführungszeichen schneller ist.

Ich finde das Ganze, ob nun einfache oder doppelte Anführungszeichen schneller sind, aufgrund der geringen Unterschiede übrigens als Augenwischerei. Da gibt es andere Tricks, die weit aus größere Auswirkungen haben.


Darf ich fragen welche Tricks das wären?
 
Tricks ist vielleicht das falsche Wort. Es sind vielmehr gewisse Vorgehensweisen bei der Entwicklung von Algorithmen, ein gewisser Programmierstil sowie das Wissen und Gespür für kostenintensive Operationen. Ilia Alshanetsky hat dazu mal die recht umfassende PHP & Performance gehalten.
 
Speziell in der Stringverwendung macht es meist mehr Sinn auf Verkettungen via "." zu verzichten - Noch intensiver schlägt sich aber zB auch folgendes Beispiel auf die Ressourcen:
PHP:
$var  = 2;
$var *= 1024;
$var *= 1024;

// besser:
$var = 1 + 1 + 2;

// noch besser:
$var = 2097152;
Für Strings gilt das ebenso:
PHP:
$var1 = $var2 = $var3 = $var4 = 'foo';

// lahm:
$output  = $var1;
$output .= $var2;
$output .= $var3; // ...

// immer noch langsam:
$output = $var1 . $var2 . $var3 . $var4;

// schnell:
$output = "{$var1}{$var2}{$var3}{$var4}";

Das sind die simpleren Tricks der generellen Optimierung - Und die sind immer auch irgendwie individuell zu lösen. Beispiel wäre zB die Nichtverwendung von [phpf]unset[/phpf] (Frisst nur Zeit und noch mehr Ressourcen!) oder [phpf]isset[/phpf] mit einer weiteren Prüfung auf einen auf False castenden Wert - Hier ist [phpf]empty[/phpf] empfehlenswert.

Und jetzt schau ich mir selbst erstmal die PDF an :)
 
Ich verwende seit längerem nur noch die einfachen Anführungszeichen. Einfacher Grund für mich ist, daß ich so die doppelten Anführungszeichen im HTML-Code nicht mehr ausknipsen muss, wenn ich ihn in den PHP-Code einbaue.

Ich weiß nicht, ob das alle hier für die praktikabelste Lösung halten, ich persömnlich habe damit ausgezeichnete Erfahrungen gemacht. Im Notfall ist es wohl Geschmackssache.
 
Zurück