Abo
  • IT-Karriere:

Release Candidate von PHP 5.3.0 veröffentlicht

Namespaces, Lambda-Funktionen, Closures und Late Static Binding

Mit der Veröffentlichung von PHP 5.3.0 RC1 nähert sich die Entwicklung des nächsten größeren Updates für PHP der Fertigstellung. Die neue Version bringt einige Funktionen mit, die ursprünglich für PHP 6 vorgesehen waren.

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. LIDL Stiftung & Co. KG, Neckarsulm
  2. Stadtwerke München GmbH, 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 Erweiterung 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 PHP-Entwickler raten Nutzern von PHP 5, die neue Version zu testen, denn vermutlich wird PHP 5.3.0 den Zweig 5.2 ersetzen, das heißt Sicherheitsupdates werden nur noch für die neue Version erscheinen. Hilfestellung beim Umstieg sollen Upgrade Notes geben.

PHP 5.3.0 RC1 steht ab sofort unter qa.php.net zum Download bereit.



Anzeige
Top-Angebote
  1. (u. a. Paperwhite 6 Zoll für 89,99€, Der neue Kindle mit integriertem Frontlicht für 59,99€)
  2. 69,90€ (Bestpreis!)
  3. (u. a. Forza Horizon 4 + LEGO Speed Champions Bundle (Xbox One / Windows 10) für 37,99€, PSN...
  4. (u. a. Fire HD 8 für 69,99€, Fire 7 für 44,99€, Fire HD 10 für 104,99€)

ratti 08. Mai 2009

Naja, „kein ist „nichts", und somit ist es nicht steigerbar. Nicht, nichtser, am...

GodsBoss 08. Mai 2009

Leider trägt PHP dieses Erbe bis heute. Besonders nachteilig ist außerdem, dass es nicht...

so-isses 26. Mär 2009

Die Antwort erhältst du, wenn du die Performance von nativem C++-Code mit der von...

mr_pain 25. Mär 2009

Ja, TYPO3 kann man nur mit schwerer Hardware hosten, wenn viel Traffic draufkommt...

Hinweisgeber 25. Mär 2009

PHP ist vor allem unerträglich langsam. Das kann nicht einmal Visual Basic...


Folgen Sie uns
       


Golem-Akademie - Trainer Stefan stellt sich vor

Rund 20 Jahre Erfahrung als Manager und Mitglied der Geschäftsleitung im internationalen Kontext sowie als Berater sind die Basis seiner Trainings. Der Diplom-Ingenieur Stefan Bayer hat als Mitarbeiter der ersten Stunde bei Amazon.de den Servicegedanken in der kompletten Supply Chain in Deutschland entscheidend mitgeprägt und bis zu 4.500 Menschen geführt. Er ist als Trainer und Coach spezialisiert auf die Begleitung von Führungskräften und Management-Teams sowie auf prozessorientierte Trainings.

Golem-Akademie - Trainer Stefan stellt sich vor Video aufrufen
iPad 7 im Test: Nicht nur für Einsteiger lohnenswert
iPad 7 im Test
Nicht nur für Einsteiger lohnenswert

Auch mit der siebten Version des klassischen iPads richtet sich Apple wieder an Nutzer im Einsteigersegment. Dennoch ist das Tablet sehr leistungsfähig und kommt mit Smart-Keyboard-Unterstützung. Wer ein gutes, lange unterstütztes Tablet sucht, kann sich freuen - ärgerlich sind die Preise fürs Zubehör.
Ein Test von Tobias Költzsch

  1. iPad Einschränkungen für Apples Sidecar-Funktion
  2. Apple Microsoft Office auf neuem iPad nicht mehr kostenlos nutzbar
  3. Tablet Apple bringt die 7. Generation des iPads

Linux-Kernel: Selbst Google ist unfähig, Android zu pflegen
Linux-Kernel
Selbst Google ist unfähig, Android zu pflegen

Bisher gilt Google als positive Ausnahme von der schlechten Update-Politik im Android-Ökosystem. Doch eine aktuelle Sicherheitslücke zeigt, dass auch Google die Updates nicht im Griff hat. Das ist selbst verschuldet und könnte vermieden werden.
Ein IMHO von Sebastian Grüner

  1. Kernel Linux bekommt Unterstützung für USB 4
  2. Kernel Vorschau auf Linux 5.4 bringt viele Security-Funktionen
  3. Linux Lockdown-Patches im Kernel aufgenommen

Minecraft Earth angespielt: Die Invasion der Klötzchen
Minecraft Earth angespielt
Die Invasion der Klötzchen

Kämpfe mit Skeletten im Stadtpark, Begegnungen mit Schweinchen im Einkaufszentrum: Golem.de hat Minecraft Earth ausprobiert. Trotz Sammelaspekten hat das AR-Spiel ein ganz anderes Konzept als Pokémon Go - aber spannend ist es ebenfalls.
Von Peter Steinlechner

  1. Microsoft Minecraft hat 112 Millionen Spieler im Monat
  2. Machine Learning Facebooks KI-Assistent hilft beim Bau von Minecraft-Werken
  3. Nvidia Minecraft bekommt Raytracing statt Super-Duper-Grafik

    •  /