PHP 5.3

1. August 2008 – 11:43

Heute erschien PHP 5.3 alpha1. Ich habe bisher nur die Doku dazu gelesen, aber das was dazu kommt bringt Spaß! :)

Namespaces

Mit Hilfe von Namespaces lassen sich Klassen zusätzlich Ordnen und sich so Kollisionen vermeiden. Mehr kann ich nicht dazu schreiben im Moment, da die Doku scheinbar schon wieder veraltetet ist, ich hoffe jedoch nicht, dass das wie in der aktuellen Doku umgesetzt wird, denn das ist Quark. Python hat das cool gelöst, wieso nicht davon ein bisschen abschauen?

Zusätzliche magische Methoden

Mit __call lassen sich bereits nicht-existente Funktionen von Objekten abfangen, nun funktioniert das auch mit statischen Funktionen. Hurra!
Die Methdoe __invoke erlaubt Objekte wie Funktionen zu behandeln.

Late static Binding

Mit dem neuen “static” Keyword soll das verkorkste Handling bei vererbten statischen Methoden korrigiert werden. Mehr dazu sowie ein gutes Beispiel findet sich auch in der Doku.

Echte anonyme Funktion

Seit PHP4 gibt es create_function, eine lieblose Methode um anonyme Funktionen zu erstellen. Mag praktisch sein, die Beispiele und die merkwürdige Handhabung haben mich jedoch bisher davon abgehalten. Mit 5.3 bekommt PHP ähnliche Funktionen wie Javascript:

$lambda = function () {
    echo "Hello World!\n";
};

Was mich verwundert: entgegen der restlichen PHP-Syntax brauchen anonyme Funktionen nach dem schließenden } ein Semikolon.
Quelle des Beispiels und einige weiteren Informationen

Auf diese Funktion freue ich mich am meisten (:

Nowdoc

Keine große Neuerung ist die Nowdoc genannte Syntax. Ähnlich der Heredoc mit dem Unterschied, dass Variablen im Text nicht ersetzt werden. siehe Doku

  1. Ein Kommentar zu “PHP 5.3”

  2. naja… das bei ner lambda-funktion hinten dran ein ; ist von der Syntax finde ich nicht falsch. ist ja schließlich ne zuweisung an eine Variable

    geschrieben von BadBoy_ am 01. Aug, 2008

Kommentar schreiben