Zend Engine
作者 | アンディ・ガトマンズ、ゼーブ・スラスキー |
---|---|
開発元 | ゼンド・テクノロジーズ |
初版 | 1999年7月19日 |
最新版 |
4.2.0
/ 2022年12月8日 |
最新評価版 |
4.3.0-dev
|
リポジトリ | |
プログラミング 言語 | C言語 |
サポート状況 | 開発中 |
種別 | インタプリタ |
ライセンス | Zend Engine License |
公式サイト |
www |
Zend EngineはPHPのインタプリタ(レジスタマシンベースの仮想機械)である。PHP Licenseに類似したZend Engine Licenseが適用される自由なソフトウェアとして、The PHP Groupによって開発・公開されている。
概要
[編集]PHPはもともとラスマス・ラードフによって開発されたソフトウェアであったが、PHP 2(PHP/FI)までほぼ1人で開発を行っていた[1]。PHP 3を作るに当たり、イスラエル工科大学の学生であったアンディ・ガトマンズ(Andi Gutmans)とゼーブ・スラスキー(Zeev Surask)が構文解析部の開発へ加わった[1]。PHP 4では、この2人によってパーサが完全に作り直され、2人の名前からZend Engineと名付けられた[2]。その後、二人はゼンド・テクノロジーズを創業し、PHPをベースとしたWebアプリケーションの開発を行っている。また、PHP自体もZend Engineがリリースされた1999年以降、急速に活躍の場を広げていった[2]。
機能
[編集]PHP 3以前では、実行のたびにソースコードを翻訳し実行を行っていた[3]。一方、Zend Engineでは、ファイル単位で中間表現へと翻訳を行い、それを実行することで、PHP 4/PHP 3の比で10倍以上という、大幅な速度向上を実現した[4]。また、Zend Engineではモジュール化が行われた[3]ほか、APIが公開されており[5]、第三者がPHP向けの拡張モジュールを開発することも可能である。
バージョン
[編集]Zend Engineのバージョン番号はPHPと連動しており、初めてZend Engineが組み込まれたPHP 4.x系がVersion 1.xとして、以後PHP 5.x系がVersion 2.x、PHP 7.x系がVersion 3.x、PHP 8.x系がVersion 4.xのように付番されている。
Zend Engine 2
[編集]PHP 5が搭載するZend Engine 2では、カプセル化や抽象クラスといったオブジェクト指向プログラミング関連や例外処理などの機能強化が行われた[6]。
脚注
[編集]- ^ a b 『プログラミング PHP』、p. 5。
- ^ a b 意外と知らないZend Engine(1/3) ThinkIT(インプレス)、2007年5月18日(2013年9月24日閲覧)。
- ^ a b 意外と知らないZend Engine(3/3) ThinkIT(インプレス)、2007年5月18日(2013年9月24日閲覧)。
- ^ 生まれ変わるPHP - Zend Engine 2、SQLiteの実力は? 5 Zend Engineの仕組みとパフォーマンスの向上 マイナビニュース、2004年3月29日(2013年9月24日閲覧)。
- ^ Zend API: PHP のコアをハックする PHPマニュアル(2013年9月24日閲覧)。
- ^ 生まれ変わるPHP - Zend Engine 2、SQLiteの実力は? 2 Zend Engine 2とPHP5の新機能 マイナビニュース、2004年3月29日(2013年9月24日閲覧)。
参考文献
[編集]- ラスマス・ラードフ、Kevin Tatroe、Peter MacIntyre『プログラミング PHP』オライリー・ジャパン、2007年。ISBN 978-4-87311-342-5。
関連項目
[編集]- Phalanger - .NET Framework上でのPHPの実装