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. Java Entwickler (d/w/m)
    MT AG, Frankfurt a.M., Köln, Ratingen
  2. Mitarbeiter*in IT Support (m/w/d)
    Landeshauptstadt Stuttgart, Stuttgart
Detailsuche

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.

Golem Karrierewelt
  1. IT-Sicherheit für Webentwickler: virtueller Zwei-Tage-Workshop
    14./15.09.2022, Virtuell
  2. Entwicklung mit Unity auf der Microsoft HoloLens 2 Plattform: virtueller Zwei-Tage-Workshop
    10./11.10.2022, Virtuell
Weitere IT-Trainings

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.

Bitte aktivieren Sie Javascript.
Oder nutzen Sie das Golem-pur-Angebot
und lesen Golem.de
  • ohne Werbung
  • mit ausgeschaltetem Javascript
  • mit RSS-Volltext-Feed


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.



Aktuell auf der Startseite von Golem.de
Mit Aliens reden
Quantenkommunikation soll interstellar möglich sein

Mithilfe von Quanten soll es möglich sein, über interstellare Distanzen Informationen auszutauschen und mit Aliens zu reden.

Mit Aliens reden: Quantenkommunikation soll interstellar möglich sein
Artikel
  1. Lennart Poettering: Systemd-Gründer wechselt offenbar zu Microsoft
    Lennart Poettering
    Systemd-Gründer wechselt offenbar zu Microsoft

    Der einflussreiche Entwickler Lennart Poettering hat offenbar den Linux-Distributor Red Hat verlassen und wechselt zur Konkurrenz.

  2. Mobile Device Management mit Microsoft Intune
     
    Mobile Device Management mit Microsoft Intune

    Neben PCs sind mobile Endgeräte aus vielen Unternehmen nicht mehr wegzudenken. Der Onlinekurs der Golem Karrierewelt zu Microsoft Intune hilft, ihren Einsatz zu optimieren.
    Sponsored Post von Golem Karrierewelt

  3. Marriott International: Hotelkette von Datenleck betroffen
    Marriott International
    Hotelkette von Datenleck betroffen

    Die Hotelkette Marriott International vermeldet das dritte Datenleck innerhalb von vier Jahren. Auch Kredikartendaten sind betroffen.

Du willst dich mit Golem.de beruflich verändern oder weiterbilden?
Zum Stellenmarkt
Zur Akademie
Zum Coaching
  • Schnäppchen, Rabatte und Top-Angebote
    Die besten Deals des Tages
    Daily Deals • Red Friday: Mega-Rabatt-Aktion bei Media Markt • LG OLED TV 77" 120 Hz günstig wie nie: 2.399€ • Amazon-Geräte günstiger • AMD Ryzen 5 günstig wie nie: 125€ • EVGA RTX 3090 günstig wie nie: 1.649€ • MindStar (MSI 31,5“ 165Hz 369€) • Der beste 2.000€-Gaming-PC [Werbung]
    •  /