PHP 7 – Funktionen, das Datum der Veröffentlichung, Gerüchte

- E-Commerce, Fire development

PHP 7Ein Mangel der Native-Unicode-Unterstützung war ein der größten Nachteilen von PHP. I Jahre 2005 beschlossen die Entwickler das zu ändern. Das neu gegründete Projekt wurde erstellt, um die Native-Unicode-Unterstützung für PHP anzubieten. Um das Ziel zu erreichen, beschlossen die Entwickler ICU Library zu benutzen (International Components for Unicode).  Eine andere wichtige Funktion des Projektes war die Darstellung UTF-16 Text-Strings. Es wurde geplannt das Projekt als Version 6.0 zu veröffentlichen, aber wir haben nur PHP 5.3 und PHP 5.4. Und beide sind ohne Unicode-Integration. Ab 2014 gibt es eine laufende Arbeit an der neue Hauptversion von PHP – PHP 7. PHP 6 mit einem Unicode wurde nie veröffentlicht. So wurde auch der Name verlassen.

Wir wissen noch nichts über alle Funktionen von PHP 7, einige von inhen wurden aber schon realisiert. Deswegen sprechen wir darüber als ein Teil von neuen PHP Hauptversion. Vor allem warten wir auf wesentliche Performance-Verbesserung. 7 PHP muss JIT Engine erhalten. Es kann dynamisch Zend-Opcodes in einen nativen Maschine Code umzusetzen. Daraufhin wird der Code bei Benutzung auffällig schneller. Wie die Möglichkeiten aussehen, so sollte Abstract Syntax Tree als Zwischenstufe für PHP 7 Aufbereitungsprozess realisiert. Hohe Wahrscheinlichkeit ist für Asynchronous Programming. Es ermöglicht dem PHP 7 und den zukünftigen Versionen von PHP 7 Erledigung von nebenläufigen Tasks zu realisieren. Diese Tasks  sind gleichen durch Anträgen verursacht. Als Ergebniss, kann man sich bessere Performance ansehen.

Die Entwicklung von PHP 7 muss ungefähr zwischen 1 und 3 Jahren dauern. Laut der vorhergehenden Ankündigung, gibt es keine offizielle Pläne für Datum der Veröffentlichung von PHP 7, aber es könnte in 2016 schon passieren. Es wurde geplant, dass man eine frühere Alphaversion im Jahre 2015 schon sehen konnte, aber die Situation wurde geändert:

PHP 7

Wie man PHP 7 installieren und probieren kann

PHP 7 auf Ubuntu 14.04

Enrico Zimuel erzählt wie man von Ubuntu 14.04 PHP 7 installieren kann. Er benutzt PHP 7.0.0-dev, dass sich auf PHPNG basiert. Der Autor erzählt über Fehler. Der Beitrag ist sehr nützlich, falls Du dieselbe Umgebung benutzen möchtest.

Install PHP 7 on Ubuntu 14.04

PHP 7 auf Fedora und RHEL

Du kannst auch PHP 7 auf Fedora und Red Hat Enterprise Linux probieren. Sieh diesen Beitrag für mehr Information.

Install PHP 7 on Fedora and RHEL

PHP7DEV

Achte auf PHP7DEV auf HitHub. Das ist Debian 7.8 Vagrant vorkonfigurierten Bild für Testen von Apps und Entwicklung von Erweiterungen.

Get PHP7DEV from GitHub

PHP 7 nightly build

Es gibt auch Docker-Container mit Nightly Build von PHP 7. Es bietet Dir Fähigkeit Unit-Tests mit One-Line Konfiguration durchführen zu können. Außerdem, hast Du die Möglichkeit neue Funktionen von PHP 7 zu probieren.

Get PHP 7 nightly build from GitHub

PHP 7 Development Box

PHP 7 Development Box ist ein Speicher mit Konfigurationsskript. Das braucht man für CentOS 7 Based Box, dass passend für Erweiterung-Entwicklung und Testen mit PHP 7 sein wird. Außerdem bekommst Du Vagrantfile.

Get PHP 7 Development Box from GitHub

3v4l.org

Auf 3v4l.org kannst Du PHP 7 online checken da es Online-Shell is, das dir die Möglichkeit gibt, deinen Code zu bewerten.

Try PHP 7 online

The roundup

Erwartete Funktionen von PHP 7 und auch erweitertes Leistungsvermögen, JIT Engine, Standalone Multi-Threaded Build-In Webserver, Abstract Syntax Tree und Asynchronous I/O Layer Refactoring. Mehr Info darüber kannst Du auf phpzag lesen.

PHP 7

New performance

Es gibt auch ein Beitrag auf magento2x. Der Autor erzählt auch über die wahrscheinlichsten Funktionen und möglichen Erscheinungstermin. Hier geht es zum vollständigen Artickel.

The post at PHP7.ca  ist informativer. Zu den oben genannten Funktionen fügt der Autor noch erweiterten Einsatz von Operatoren: ->, (), [], {}, ::. Er betont auch die Gründe, warum wir zu PHP 7 springen sollen.

PHP 7

The new operator

Neben den Leistungsverbesserungen, stellt PHP 7 Abschreibungen von vorhandenen Funktionen bereit. Die alte Funktionalität ist nutzlos, so sollen ext/ereg und ext.mysql durch andere Erweiterungen ersetz werden. Abschreibungsliste enthält Namen von String-Kategorien in setlocale () and # Style Kommentare in Ini-Dateien. Ihrerseits sind PHPNG-Verbesserungen in Version 7 auf Speicherallokation und Hashtabelle ausgerichtet. Vorjahresergebnis von PHPNG zeigt 35% von Verbesserungen in synthetischen Tests und 20-70% SpeedUp auf echten Apps (60% für WordPress Homepage). Die Ergebnisse von PHP 7 sollen aber höher sein. Die neue Technologie bietet die Unterstützung für fast alle PHP Erweiterungen an. Sie stellt auch Speed-Results zur Verfügung, die mit HHVM 3.3.0. zu vergleichen sind. Hier geht es zum vollständigen Artickel.

PHP 7

Return Type Declarations

Und vergesse nicht den Beitrag auf sitepoint.com auch zu lesen. Der Autor erzählt über PHP 7 Revolution. Am Anfang sind PHP 5 und PHP 7 verglichen. Dann ist es über Rückgabetyp zu lesen – PHP 7 bekommt sie endlich. Der Autor betont auch das Entfernen von Artefakten, weil bevorstehende PHP 7 Version die PHP 4-Style Konstrukteuren zu beidseitigen vorschlägt. Und noch gibt es dort Info über Änderungen von API Erweiterung. Die Änderungen in PHP 7 können zum erzögerten Einfallen führen, wenn die Erweiterung zu neue Version Portiers wird. Hier kann man den ganzen Beitrag lesen.

Der Beitrag auf thephp.cc ist über PHP 7 Neuausrichtung. Der Autor erzählt, wie dieser Prozess die PHP Projekte beeinflussen kann. Zum Beispiel, neue PHP Änderungen haben alle Chance Magento 1 zu entsperren. Und zum Schluss erzählt der Autor über PEAR Umgebung, die mit PHP 7 nicht mehr arbeitet, und auch über Konsequenzen dieser Erneuerung.

Checke mal auch Episode 57 von Lately in PHP Podcast. Diese ist über die Funktionen und Erweiterungen, die entfernt werden sollen, Opcode Cache Erweiterung, den API Zugang zu analysierten PHP Code Abstract Syntax Tree, Zend Open Source JIT Engine, usw. Podcast dauert 55 Minuten.

Der Beitrag auf phpclasses zeigt, wie man PHP 7 Unit Tests durch Nutzung von Strict-Type-Hinting schreiben kann. Der Autor benutzt sein praktisches Beispiel. Er stellt auch Link zu seinem PHP 7 Strict-Type-Repo zur Verfügung.