Zend Engine

Zend Engine
Basisdaten

EntwicklerZend Technologies
Erscheinungsjahr1999
Aktuelle Version3.4 (PHP 7.4) 4.0 (PHP 8.0)
ProgrammierspracheC
LizenzPHP-Lizenz
zend.com

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.

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

Einzelnachweise

  1. Zend engine. In: PHP Internals Book. Abgerufen am 1. Februar 2019 (englisch).
  2. a b Wikipedia: PHP
  3. Migration von PHP/FI 2.0 zu PHP 3.0. (Memento vom 3. Februar 2007 im Internet Archive) PHP Manual
  4. Changelog für PHP 4.0.0
  5. 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
  6. PHP 5.2.0 bringt Sicherheitsfixes und neue Funktionen – Update. heise.de
  7. Namespaces
  8. PHP and Unicode: A Love at Fifth Sight. (Memento vom 24. Mai 2005 im Internet Archive)