Zend Engine
Die Zend Engine ist ein Compiler für die Skriptsprache PHP und besteht aus einer virtuellen Maschine, die den PHP-Code kompiliert und ausführt.[1] Sie wird als freie Software unter der PHP-Lizenz verbreitet.
Zend Engine | |
---|---|
Basisdaten | |
Entwickler | Zend Technologies |
Erscheinungsjahr | 1999 |
Aktuelle Version | 3.4 (PHP 7.4) 4.0 (PHP 8.0) |
Programmiersprache | C |
Lizenz | PHP-Lizenz |
zend.com |
Mit Zend durchläuft der Programmcode mehrere Kompilierungsschritte bis zum ausführbaren Maschinencode. Eine Zwischenrepräsentation ist der sogenannte Zend-Opcode, ein noch plattformunabhängiger Bytecode (wie bei Java). Die Engine ist so gebaut, dass Caches zwischengeschaltet werden können, um redundante Bytecode-Generierung zu minimieren und so die Ausführung effizienter zu gestalten. Neben dem proprietären, kostenpflichtigen Produkt aus dem eigenen Hause (Zend Optimizer) gibt es dafür auch eine Reihe freier Lösungen.
Etymologie / Wortherkunft
Der Name „Zend“ entstammt den Vornamen der beiden Entwickler der Zend Engine, Zeev Suraski und Andi Gutmans. Gemeinsam begannen sie während ihrer Studienzeit mit der Entwicklung und gründeten später das Unternehmen Zend Technologies.
Geschichte
Die Zend Engine wurde von Zeev Suraski und Andi Gutmans entwickelt, da ihnen PHP/FI 2 für E-Commerce zu schwach war.[2] Zunächst wurde am 6. Juni 1998 die Version 0.5 zusammen mit der PHP-Version 3 veröffentlicht.[2] Veränderungen gegenüber dem Interpreter von PHP/FI 2 waren vor allem die bessere Performance sowie einige Änderungen der Syntax und des Verhaltens von PHP.[3] Die Version 1.0 wurde am 22. Mai 2000 zusammen mit PHP 4 veröffentlicht. Sie unterstützt Sessions sowie grundlegende Objektorientierte Programmierung.[4] Ab der Version 2.0 ist mit vielen neuen Funktionalitäten ernsthaftes objektorientiertes Programmieren möglich. Bei der Version 2.1 ist vor allem die Performance verbessert worden,[5] während die Version 2.2 zusätzlich ein verbessertes Speichermanagement besitzt.[6] Ab der Version 2.3 unterstützt die Zend Engine Namensräume,[7] ab der Version 3.0 wird der Standardzeichensatz auf Unicode geändert.[8]
Siehe auch: PHP
Verwandte Produkte
Um den Quellcode weiter zu optimieren, wurde der Zend Optimizer entwickelt, der als Ergänzung zur Zend Engine fungiert. Weiterhin wird der Zend Optimizer zur Ausführung von mit dem Zend Guard verschlüsselten PHP-Quelltexten benötigt.
Anmerkungen
Die Versionsnummer der Zend Engine entspricht der der Scriptsprache PHP minus 3, da ab der Version 1.0 der Zend Engine die PHP-Version 4 unterstützt wird. Ab PHP 7 gilt diese Regel nicht mehr – so wird für PHP 7.2 die ZendEngine 3.2 genutzt.
Weblinks
- Zend Engine Homepage
- Zend Technologies Ltd.
- Feature Overview and Design Zend Engine 2. (Memento vom 4. Juni 2014 im Internet Archive) (PDF; englisch)
Einzelnachweise
- Zend engine. In: PHP Internals Book. Abgerufen am 1. Februar 2019 (englisch).
- Wikipedia: PHP
- Migration von PHP/FI 2.0 zu PHP 3.0. (Memento vom 3. Februar 2007 im Internet Archive) PHP Manual
- Changelog für PHP 4.0.0
- Performance-Vergleich PHP 4.3.1 zu PHP 5.0.0 und Performance-Vergleich PHP 4.3.1 zu PHP 5.1.0. ister.org
- PHP 5.2.0 bringt Sicherheitsfixes und neue Funktionen – Update. heise.de
- Namespaces
- PHP and Unicode: A Love at Fifth Sight. (Memento vom 24. Mai 2005 im Internet Archive)