Es ist schon eine Weile raus, doch ich komme erst jetzt dazu, meinen Senf hier zu lassen: das Update für PHP. Wir sind bei Version 5.4. Neben einigen Performance-Verbesserungen – angeblich soll PHP bis zu 20% schneller laufen – gibt es Vereinfachungen für den Entwickler, der PHP benutzt. Diese möchte ich kurz vorstellen.
JavaScript-artige Array-Deklarierung
Etwas, was ich an JavaScript schon immer mochte, war das einfache Anlegen von Arrays.
var coolesArray = [‘Wert eins’, ‘der zweite Wert’, ‘Wert numero tres’];
Selbige Syntax gibt es jetzt auch in PHP.
// alte Syntax
$altesArray = array(‘viele’, ‘bunte’, ‘Werte’);
// neue Syntax - Werte only
$neuesArrayNumerisch = [‘viele’, ‘bunte’, ‘Werte’];
// neue Syntax - assoziativ, d.h. mit Schlüsseln
$neuesArrayAssoziativ = [
'Anzahl' => 'viele',
'Farbe' => 'bunte',
'Substantiv' => 'Werte'
];
Array Differenzierung – eine temporäre Variable weniger
Angenommen es gäbe eine Klasse, die bestimmte Werte als Array zurückliefert. Wir wollen das Siebzehnte dieser Elemente haben. Bevor PHP 5.4 ging das so:
// alte Syntax
$coolesArray = $cooleKlasse->gibMirEinArray();
echo $coolesArray[17];
Folgendes Konstrukt erspart uns in Zukunft eine Zeile:
// neue Syntax
echo $cooleKlasse->gibMirEinArray()[17];
Fluent Interface mit Constructor
Eine ähnliche Vereinfachung ergibt sich bei der Verwendung von Methoden einer gerade initiierten Klasse. Siehe Code-Beispiel:
// alte Syntax
$cooleKlasse = new cooleKlasse();
echo $cooleKlasse->gibMirEinArray();
// neue Syntax
echo (new cooleKlasse())->gibMirEinArray();
Mehr Neuerungen
Ansonsten gibt es nun Traits, short_open_tag
(z.B. <?=$output?>
statt <?php echo $output; ?>
) ist nun immer verfügbar, callable
ist ein neuer Typehint und Binärzahlen können direkt zugewiesen werden. Und das ist noch nicht alles. Weiterführende Infos dazu findet ihr bei PHP Gangsta und codenaschereien.de.
Wie sieht es bei euch aus? Läuft PHP in der neusten Version schon bei euch? Wie sind eure Erfahrungen?