Abo
  • Services:

PHP 5.3.0 veröffentlicht

Namespaces, Lambda-Funktionen, Closures und Late Static Binding

Mit der Veröffentlichung von PHP 5.3.0 halten zahlreiche größere Änderungen Einzug in die freie Scriptsprache. Einige davon waren ursprünglich erst für PHP 6 geplant.

Artikel veröffentlicht am ,

Zu den wesentlichen Neuerungen von PHP 5.3 zählt die Einführung von Namespaces, die seit der dritten Alphaversion Teil der Scriptsprache sind. Diese Namensräume kapseln Funktionen und Klassen ein, wodurch sich Programmierer keine Gedanken mehr machen müssen, ob ein Funktions- oder Klassenname bereits verwendet wird. Sie waren ursprünglich erst für PHP 6 anvisiert.

Stellenmarkt
  1. soft-nrg Development GmbH', Dornach
  2. Interhyp Gruppe, München

Ebenfalls neu sind Lambda-Funktionen, auch bekannt als anonyme Funktionen, zum Beispiel in JavaScript. Sie sind ein reguläres Sprachelement funktionaler Sprachen und werden nicht explizit mit einem Namen deklariert und unter diesem aufgerufen, sondern der Funktionskörper muss einer Variablen zugewiesen werden. Deshalb kann eine Lambda-Funktion auch als Über- oder Rückgabewert einer Funktion übergeben werden.

Zusammen mit Lambda-Funktionen werden auch sogenannte Closures eingeführt. Lambda-Funktionen werden häufig innerhalb einer Funktion oder Methode definiert, aber zumeist nicht darin ausgeführt. Das führt zu Problemen mit der Sichtbarkeit von Variablen innerhalb der Lambda-Funktion. In funktionalen Sprachen sind äußere Variablen standardmäßig innerhalb der Lambda-Funktion sichtbar. In PHP hingegen müssen erforderliche Variablen explizit mit dem neuen Schlüsselwort use in die Lambda-Funktion importiert werden.

Mit dem neuen Prefix static:: für Methodenaufrufe wird "Late static binding" eingeführt. Es kann für den statischen Aufruf einer Methode innerhalb einer Klassenmethode verwendet werden, ohne dass der Klassenname bekannt ist. Es reicht, wenn die Methode innerhalb der Klasse definiert oder von einer Klasse geerbt wurde.

Die neue Metamethode für Klassen __callStatic() erlaubt es, statische Aufrufe undefinierter Klassenmethoden abzufangen und auszuwerten, analog zu __call() für Methodenaufrufe auf instanzierte Objekte.

Darüber hinaus versprechen die Entwickler eine verbesserte Geschwindigkeit, eine optionale Garbage-Collection für zyklische Referenzen und ebenfalls optional mysqlnd als nativen Ersatz für libmysql. Verbessert wurde die Windows-Unterstützung einschließlich VC6 und VC9 Binarys und es werden einige neue Erweiterungen mitgeliefert: ext/phar, ext/intl, ext/fileinfo, ext/sqlite3 und ext/enchant.

Zugleich entfallen einige Erweiterungen (ext/mhash, ext/msql, ext/pspell, ext/sybase), andere wurden in PECL verschoben (ext/ming, ext/fbsql, ext/ncurses und ext/fdf). Zudem wurde die Nutzung interner APIs vereinheitlicht.

Die wesentlichen Neuerungen im Detail finden sich im Release-Anouncement, eine detaillierte im Changelog. Ein Migration-Guide hilft beim Umstieg von PHP 5.2 auf 5.3.

PHP 5.3.0 steht unter php.net zum Download bereit.



Anzeige
Hardware-Angebote
  1. ab 399€

IhrName9999 06. Jul 2009

Mei was sind wir heute aber wieder schizophren, Jüngelchen :) http://www...

Monito 06. Jul 2009

Ich denke liebes Volk, dass PHP sein bestes endgültig gegeben hat und die Sprache jetzt...

dfgdfgdfg 01. Jul 2009

Im Grunde ists ja auch nur ein neuer Datentyp. Also ja.


Folgen Sie uns
       


Fazit zu Shadow of the Tomb Raider

Wir tauchen mit Lara in der Apokalypse ab und verfassen unser Fazit.

Fazit zu Shadow of the Tomb Raider Video aufrufen
Norsepower: Stahlsegel helfen der Umwelt und sparen Treibstoff
Norsepower
Stahlsegel helfen der Umwelt und sparen Treibstoff

Der erste Test war erfolgreich: Das finnische Unternehmen Norsepower hat zwei weitere Schiffe mit Rotorsails ausgestattet. Der erste Neubau mit dem Windhilfsantrieb ist in Planung. Neue Regeln der Seeschifffahrtsorganisation könnten bewirken, dass künftig mehr Schiffe saubere Antriebe bekommen.
Ein Bericht von Werner Pluta

  1. Car2X Volkswagen will Ampeln zuhören
  2. Innotrans Die Schiene wird velosicher
  3. Logistiktram Frankfurt liefert Pakete mit Straßenbahn aus

Shine 3: Neuer Tolino-Reader bringt mehr Lesekomfort
Shine 3
Neuer Tolino-Reader bringt mehr Lesekomfort

Die Tolino-Allianz bringt das Nachfolgemodell des Shine 2 HD auf den Markt. Das Shine 3 erhält mehr Ausstattungsdetails aus der E-Book-Reader-Oberklasse. Vor allem beim Lesen macht sich das positiv bemerkbar.
Ein Hands on von Ingo Pakalski

  1. E-Book-Reader Update macht Tolino-Geräte unbrauchbar

Mate 20 Pro im Hands on: Huawei bringt drei Brennweiten und mehr für 1.000 Euro
Mate 20 Pro im Hands on
Huawei bringt drei Brennweiten und mehr für 1.000 Euro

Huawei hat mit dem Mate 20 Pro seine Dreifachkamera überarbeitet: Der monochrome Sensor ist einer Ultraweitwinkelkamera gewichen. Gleichzeitig bietet das Smartphone zahlreiche technische Extras wie einen Fingerabdrucksensor unter dem Display und einen sehr leistungsfähigen Schnelllader.
Ein Hands on von Tobias Költzsch

  1. Keine Spionagepanik Regierung wird chinesische 5G-Ausrüster nicht ausschließen
  2. Watch GT Huawei bringt Smartwatch ohne Wear OS auf den Markt
  3. Ascend 910/310 Huaweis AI-Chips sollen Google und Nvidia schlagen

    •  /