This articlerelies excessively onreferences toprimary sources. Please improve this article by addingsecondary or tertiary sources. Find sources: "Zend Engine" – news ·newspapers ·books ·scholar ·JSTOR(July 2016) (Learn how and when to remove this message) |
| Zend Engine | |
|---|---|
![]() | |
| Original authors | Andi Gutmans,Zeev Suraski |
| Developers | Zend Technologies, The PHP Development Team |
| Initial release | 1999 |
| Stable release | 3.4 (PHP 7.4) 4.0 (PHP 8.0) |
| Written in | C,PHP |
| Type | Scripting engine |
| License | Zend Engine License (some parts are under thePHP License) |
| Website | www |
| Repository | github |
TheZend Engine is acompiler andruntime environment for thePHP scripting language and consists of the Zend Virtual Machine, which is composed of the Zend Compiler and the Zend Executor, that compiles and executes the PHP code.[2] It was originally developed byAndi Gutmans andZeev Suraski while they were students at theTechnion – Israel Institute of Technology. They later founded a company calledZend Technologies inRamat Gan,Israel. The name Zend is a combination of their forenames, Zeev and Andi.
The first version of the Zend Engine appeared in 1999 in PHP version 4.[3] It was written inC as a highly optimized modular back-end, which for the first time could be used in applications outside of PHP. The Zend Engine provides memory and resource management, and other standard services for the PHP language. Its performance, reliability andextensibility played a significant role in PHP's increasing popularity.
This was followed byZend Engine 2 at the heart ofPHP 5.
This was followed byZend Engine 3, originally codenamedphpng, which was developed forPHP 7 and significantly improves performance.[4]
The newest version isZend Engine 4, which was developed forPHP 8.
The source code for the Zend Engine has been freely available under theZend Engine License (although some parts are under thePHP License) since 1999,[5] as part of the official releases from php.net, as well as the officialgit repository or theGitHub mirror. Various volunteers contribute to the PHP/Zend Engine codebase.
Zend Engine is used internally by PHP as a compiler and runtime engine. PHP Scripts are loaded into memory and compiled into Zendopcodes. These opcodes are executed and the HTML generated is sent to the client.[6]
To implement a Web script interpreter requires three parts:
Zend takes part 1 completely and a bit of part 2; PHP takes parts 2 and 3.
Zend itself really forms only the language core, implementing PHP at its very basics with some predefined functions.