13
14

Delete article

Deleted articles cannot be recovered.

Draft of this article would be also deleted.

Are you sure you want to delete this article?

More than 3 years have passed since last update.

【PHP】PHP と Zend Engine のバージョン

Last updated at Posted at 2016-11-25

今まで PHP のバージョンと Zend Engine のバージョンの関連性についてよく理解していませんでした。
Zend Engine - Wikipedia(日本語) を確認しましたが、詳細がなかったので少し調べてみました。

Zend Engine のバージョンは大別すると Zend Engine 1 と Zend Engine 2 と Zend Engine 3 があります。
自分の環境の Zend Engine のバージョンを調べるには phpinfo または zend_version で確認できます。

PHP:phpinfo
<?php
phpinfo();
PHP:zend_version
<?php
echo zend_version();

Zend Engine のバージョンは、PHP自体のソースコードに記述されています。
PHP自体のソースコードは GitHub(php/php-src) から確認できます。
php-src/Zend/zend.hZEND_VERSION に Zend Engine のバージョンが記述されています。
GitHub画面の左上にある 「Branch:master」 からPHPのバージョンを選択できるので、バージョン別のソースコードを閲覧することも可能です。
Zend Engine のバージョンとPHPのバージョンはリンクしています。
Zend Engine の歴史についての詳細は ここ に書かれていますが、一部引用します。

Zend Engineは、1999年に発表され、他の新機能と共にPHP 4.0として2000年5月にリリースされました。新機能には、2バイトコードの対応も含まれており、正式に日本語対応が行われました。

ちなみに1999年にAndi GutmansとZeev Suraskiは、Zend Technologies Ltdを設立し、Zend Engineをコミュニティに無償で提供しています。ここでは、Zend Engineと連係してPHPを拡張する様々な製品の提供を行っています。

そして、オブジェクト指向の実装強化をはじめとした新機能を搭載したPHP 5.0が2004年7月に公開されました。PHP 5.0には、「Zend Engine Ⅱ」が搭載され、高速性をはじめとした根幹を支えています。

引用:第1回:意外と知らないZend Engine

Zend Engine 1 と Zend Engine 2 に関しては引用の通りです。
PHP7 から Zend Engine 3 になっております。
PHP と Zend Engine のバージョンは下記の通りです。

リリース PHPのバージョン Zend Engineのバージョン
2000年05月 PHP 4 Zend Engine 1
2004年04月 PHP 5 Zend Engine 2
2015年12月 PHP 7 Zend Engine 3

ご覧の通り、PHPのメジャーアップデートに伴い、Zend Engine もバージョンアップしているのがわかります。
PHP と Zend Engine はメジャーバージョンがリンクしているということがわかりましたが、 GitHub(php/php-src) でPHPのソースコードを確認してみると、どうやらマイナーバージョンもリンクしているみたいです。
PHP と Zend Engine のバージョン一覧を ッターン! と取得できる方法があるのかもしれませんが、わからないのでGitHubにあるソースコードを一つ一つ確認しました。
ちなみに、PHP4のソースコードはGitHubにないので調べてません。

PHPのバージョン Zend Engineのバージョン
PHP 5.0 Zend Engine 2.0.5
PHP 5.1 Zend Engine 2.1.0
PHP 5.2 Zend Engine 2.2.0
PHP 5.3 Zend Engine 2.3.0
PHP 5.4 Zend Engine 2.4.0
PHP 5.5 Zend Engine 2.5.0
PHP 5.6 Zend Engine 2.6.0
PHP 7.0 Zend Engine 3.0.0
PHP 7.1 Zend Engine 3.1.0-dev

ご覧の通り、PHP と Zend Engine のマイナーバージョン(2桁目)もリンクしているようです。

余談ですが、2016年11月25日現在 Zend Engine - Wikipedia(日本語) に記載されている Zend Engine の最新バージョンは 2.4.0 となっております。
PHP と Zend Engine のマイナーバージョンはリンクしているので、Wikipediaの記事は PHP5.4 のときに更新されたのではないかと推測することができます。

note

note でも記事を公開してるので、興味がある方はご覧ください。

【初学者向けコードリーディング】 PHP の TODO アプリのコードを一緒に読み解こう

13
14
0

Register as a new user and use Qiita more conveniently

  1. You get articles that match your needs
  2. You can efficiently read back useful information
  3. You can use dark theme
What you can do with signing up
13
14

Delete article

Deleted articles cannot be recovered.

Draft of this article would be also deleted.

Are you sure you want to delete this article?