HOME

TheInfoList



OR:

The Zend Engine is a
compiler In computing, a compiler is a computer program that translates computer code written in one programming language (the ''source'' language) into another language (the ''target'' language). The name "compiler" is primarily used for programs tha ...
and
runtime environment In computer programming, a runtime system or runtime environment is a sub-system that exists both in the computer where a program is created, as well as in the computers where the program is intended to be run. The name comes from the compile ...
for the PHP 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. It was originally developed by
Andi Gutmans Andi (Andrei) Gutmans is an Israeli programmer and entrepreneur. Biography Andi Gutmans holds a bachelor’s degree in Computer Science from the Technion in Haifa. Gutmans holds four citizenships: Swiss, British, Israeli and American. Business ...
and Zeev Suraski while they were students at the
Technion – Israel Institute of Technology The Technion – Israel Institute of Technology ( he, הטכניון – מכון טכנולוגי לישראל) is a public research university located in Haifa, Israel. Established in 1912 under the dominion of the Ottoman Empire, the Technion ...
. They later founded a company called Zend Technologies in
Ramat Gan Ramat Gan ( he, רָמַת גַּן or , ) is a city in the Tel Aviv District of Israel, located east of the municipality of Tel Aviv and part of the Tel Aviv metropolitan area. It is home to one of the world's major diamond exchanges, and man ...
,
Israel Israel (; he, יִשְׂרָאֵל, ; ar, إِسْرَائِيل, ), officially the State of Israel ( he, מְדִינַת יִשְׂרָאֵל, label=none, translit=Medīnat Yīsrāʾēl; ), is a country in Western Asia. It is situated ...
. 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. It was written in C 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 and
extensibility Extensibility is a software engineering and systems design principle that provides for future growth. Extensibility is a measure of the ability to extend a system and the level of effort required to implement the extension. Extensions can be t ...
played a significant role in PHP's increasing popularity. This was followed by ''Zend Engine 2'' at the heart of
PHP 5 PHP is a General-purpose programming language, general-purpose scripting language geared toward web development. It was originally created by Danish-Canadian programmer Rasmus Lerdorf in 1993 and released in 1995. The PHP reference implementati ...
. This was followed by ''Zend Engine 3'', originally codenamed ''phpng'', which was developed for
PHP 7 PHP is a general-purpose scripting language geared toward web development. It was originally created by Danish-Canadian programmer Rasmus Lerdorf in 1993 and released in 1995. The PHP reference implementation is now produced by The PHP Group. ...
and significantly improves performance. The newest version is ''Zend Engine 4'', which was developed for
PHP 8 PHP is a General-purpose programming language, general-purpose scripting language geared toward web development. It was originally created by Danish-Canadian programmer Rasmus Lerdorf in 1993 and released in 1995. The PHP reference implementati ...
. The source code for the Zend Engine has been freely available under the Zend Engine License (although some parts are under the
PHP License The ''PHP License'' is the software license under which the PHP scripting language is released. The PHP License is designed to encourage widespread adoption of the source code. Redistribution is permitted in source or binary form with or wit ...
) since 1999, as part of the official releases from php.net, as well as the official
git Git () is a distributed version control system: tracking changes in any set of files, usually used for coordinating work among programmers collaboratively developing source code during software development. Its goals include speed, data in ...
repository or the
GitHub GitHub, Inc. () is an Internet hosting service for software development and version control using Git. It provides the distributed version control of Git plus access control, bug tracking, software feature requests, task management, cont ...
mirror. Various volunteers contribute to the PHP/Zend Engine codebase.


Architecture

Zend Engine is used internally by PHP as a compiler and runtime engine. PHP Scripts are loaded into memory and compiled into Zend
opcodes In computing, an opcode (abbreviated from operation code, also known as instruction machine code, instruction code, instruction syllable, instruction parcel or opstring) is the portion of a machine language instruction that specifies the operat ...
. These opcodes are executed and the HTML generated is sent to the client. To implement a Web script interpreter requires three parts: # The interpreter part analyzes the input code, translates it, and executes it. # The functionality part implements the functionality of the language (its functions, etc.). # The interface part talks to the Web server, etc. 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.


See also

*


References


External links

* *
Official git repository
* {{PHP 1999 software C (programming language) software PHP PHP software