Neben vielen kleinen Fixes und Verbesserungen, wurden folgende wesentliche Funktionen hinzugefügt:
- Traits: Methode zur Wiederverwendung von Code
Erläuterung: Traits ist ein Mechanismus zur Wiederverwendung von Code, der in Programmiersprachen mit einfacher Vererbung wie PHP verwendet wird. Ein Trait kann verwendet werden die Beschränkungen der einfachen Vererbung aufzuweichen indem er erlaubt, dass Mengen von Methoden frei in mehreren unabhängigen Klassen die in verschiedenen Klassenhierarchien stecken wiederzuverwenden. Die Semantik der Kombination von Traits und Klassen ist so definiert, dass die Komplexität reduziert wird und die üblichen Probleme vermeidet, die mit Mehrfachvererbung und Mixins in Verbindung gebracht werden.
Ein Trait hat Ähnlichkeit mit einer Klasse ist aber nur dafür vorgesehen Funktionalität in einer feingranularen und konsistenten Art und Weise zu bündeln. Es ist nicht möglich einen Trait aleinstehend zu instantiieren. Es handelt sich um einn Zusatz zur traditionellen Vererbung und erlaubt horizolntale Komposition von Verhaltensweisen, d.h. die Verwendung von Klassenmethoden ohne Vererbung vorauszusetzen. - Built-in webserver für CLI (Command Line Interpreter)
- Code wurde von alten „deprecated“ Funktionen gesäubert
Darüber hinaus soll PHP 5.4 deutlich leistungsfähiger sein, vor allem dank der verbesserten Zend Engine.
Es wurde auch einige Funktionen entfernt, die sich ggf. beim Upgrade durch mangelnde Kompatibilität bemerkbar machen könnten.
- Register globals, magic quotes und safe mode wurden entfernt
- break/continue $var Syntax wurde abgeschafft
- allow_call_time_pass_reference wurde aus der php.in entfernt
- default_charset ist jetzt UTF-8