HOME

TheInfoList



OR:

The Zend Engine is a
compiler In computing, a compiler is a computer program that Translator (computing), translates computer code written in one programming language (the ''source'' language) into another language (the ''target'' language). The name "compiler" is primaril ...
and
runtime environment In computer programming, a runtime system or runtime environment is a sub-system that exists 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 time ...
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 and Zeev Suraski while they were students at the
Technion – Israel Institute of Technology The Technion – Israel Institute of Technology is a public university, public research university located in Haifa, Israel. Established in 1912 by Jews under the dominion of the Ottoman Empire, the Technion is the oldest university in the coun ...
. They later founded a company called
Zend Technologies Zend, formerly Zend Technologies, is a Minneapolis, Minnesota-based software company. The company's products, which include Zend Studio, assist software developers with developing, deploying, and managing PHP-based web applications. The company w ...
in
Ramat Gan Ramat Gan (, ) is a city in the Tel Aviv District of Israel, located east of the municipality of Tel Aviv, and is part of the Gush Dan, Gush Dan metropolitan area. It is home to a Diamond Exchange District (one of the world's major diamond exch ...
,
Israel Israel, officially the State of Israel, is a country in West Asia. It Borders of Israel, shares borders with Lebanon to the north, Syria to the north-east, Jordan to the east, Egypt to the south-west, and the Mediterranean Sea to the west. Isr ...
. 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. This was followed by ''Zend Engine 3'', originally codenamed ''phpng'', which was developed for PHP 7 and significantly improves performance. The newest version is ''Zend Engine 4'', which was developed for PHP 8. 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 open-source 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 ...
) since 1999, as part of the official releases from php.net, as well as the official
git Git () is a distributed version control system that tracks versions of files. It is often used to control source code by programmers who are developing software collaboratively. Design goals of Git include speed, data integrity, and suppor ...
repository or the
GitHub GitHub () is a Proprietary software, proprietary developer platform that allows developers to create, store, manage, and share their code. It uses Git to provide distributed version control and GitHub itself provides access control, bug trackin ...
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. 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