Help us understand the problem. What is going on with this article?

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

今まで 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 アプリのコードを一緒に読み解こう

7968
学んだことを投稿していきます。誤りがあればご指摘ください。 note でも記事を投稿しています。
https://note.com/7968
Why not register and get more from Qiita?
  1. We will deliver articles that match you
    By following users and tags, you can catch up information on technical fields that you are interested in as a whole
  2. you can read useful information later efficiently
    By "stocking" the articles you like, you can search right away
Comments
No comments
Sign up for free and join this conversation.
If you already have a Qiita account
Why do not you register as a user and use Qiita more conveniently?
You need to log in to use this function. Qiita can be used more conveniently after logging in.
You seem to be reading articles frequently this month. Qiita can be used more conveniently after logging in.
  1. We will deliver articles that match you
    By following users and tags, you can catch up information on technical fields that you are interested in as a whole
  2. you can read useful information later efficiently
    By "stocking" the articles you like, you can search right away
ユーザーは見つかりませんでした