ITエンジニアのための勉強会・イベントレポート情報メディア

PHP Conference 2016 基調講演
event

PHP Conference 2016 基調講演

2017.01.24

 
  • このエントリーをはてなブックマークに追加

11月3日、今年もPHPカンファレンスが蒲田の大田区産業プラザ(PiO)にて開催された。2000年からはじまったこのイベントも今回で17回目だ。本稿では、日本PHPユーザー会廣川類氏による基調講演「PHPのいまとこれから」をレポートする。

鶴田 展之

PHPの今

W3Techs.comの調査では、現在Webアプリケーションで利用される「サーバサイドプログラミング言語」として、PHPは実に82%を超えるシェアを誇っている。このシェアはここ数年ほぼ固定されており、Webの世界では概ねPHPがデファクト・スタンダードの座を揺るぎないものにしていると言ってよいだろう。また、CMS(コンテンツ管理システム)のシェアでも、WordPress、Joomla、Drupal、MagentoといったPHPアプリケーションが上位を占めている。もちろんCMSのようなアプリケーションはサイトの内容によって向き不向きがあるので一概に何が優れているとは言えないものだが、WordPressのように60%近いシェアを占めるというのは、それだけ使い勝手がよく汎用性が高いことの表れと言える。

そのPHPだが、現在、多くのサイトで古いバージョンからのアップデートが進んでいないという問題を抱えている。昨年12月に、最新のメジャーバージョンであるPHP7がリリースされたが、今年10月の調査ではPHP7へ移行したサイトはまだ1.6%に留まる。一方で、EOL(End Of Life)となってサポートされなくなったPHP5.5以前のバージョンが、いまだに81%も使われているという。廣川氏は「あまり好ましいことではない」と語る。PHPのライフサイクルは3年で、リリース後2年間はバグ修正、最後の1年はセキュリティ修正のみが行われることになっている。今のメインストリームであるPHP 5.6も来年8月にはサポートが切れるので、サイト管理者は早めにPHP7へのアップデートの計画を立てておいて欲しい。

PHP 7から7.1への変更点

PHP7はメジャーバージョンアップだけあって劇的な高速化を含め大きな改善が盛り込まれた。間もなくリリースになるPHP 7.1ではさほど大きな変更はないが、細やかな改良が行われている。

【1】 複数例外型のキャッチ
これまでひとつずつcatchして処理しなければならなかった例外をまとめてcatchできるようになった。従来よりも例外処理の記述がシンプルになるので、見通しのよいスクリプトを書きやすくなるだろう。

【2】 リスト構文の改善

list($a, $b, $c) = $a;

[$a, $b, $c] = $a;

のように、list()を使用しなくてもシンプルに代入できるようになった。

【3】 クラス定数のアクセサ指定
PHP 7まで、クラス定数(const)はすべてpublic扱いだったが、クラス変数と同様にpublic / private / protectedのアクセス制限を指定できるようになった。

【4】 Nullable型
関数の引数、戻り値にnullを許容する場合に「?」で指定できるようになった。

function foo(string $msg) {
 echo $msg;
}

という関数を呼び出す際に

foo(null);

と引数にnullを渡すとfatal errorになるが、

function foo(?string $msg) {
 echo $msg;
}

とすることで、文字列(string)またはnullを渡せる。null以外の型チェックはそのまま機能するので、引数の型制限をより柔軟に活用できるだろう。

その他、McryptがDEPRECATEDになる等の重要な変更もあるので、既存コードの互換性は順次検証しておきたいところだ。

PHPのこれから

さて、今後のPHPだが、7.2、さらに8に向けた動きが見え始めている。講演では、未来のPHPについてもちょっとしたトピックが紹介された。

【1】 PCO (PHP Cryptography Objects)
データベース抽象化レイヤの「PDO」同様に、OpenSSLやLibsodiumなど様々な暗号・ハッシュの機能を統一的に利用できるようにするもの。セキュリティ面の課題解決を容易にする機能として期待できそうだ。

【2】 JIT for PHP
9月にZend社がPHP8用の開発コードとしてキャッシュエンジン(OpCache)を拡張した新しいJITを公開した。今のところ大きな性能向上は見られないが、今後テストと改良が進んでいくと思われる。

今年のPHPカンファレンスでは、全体的にPHPの言語としての成熟を強く感じたが、引き続き性能向上への努力が行われていることはユーザーとしては非常に心強い。基調講演も決して派手な内容ではなかったが、PHPの盤石感があらためて感じられ、個人的には今後がとても楽しみになった。とりあえずはPHP7への移行を急ぐことにしよう。

原稿:鶴田 展之
qnote代表取締役。オープンソースソフトウェアを用いたシステムインテグレーション及びコンサルティングの傍ら、技術書を中心に多数の著述活動を行う。
なお、オフィスには7匹の猫がいる。

PHP Conference 2016 基調講演

この記事はどうでしたか?

おすすめの記事

キャリアを考える

BACK TO TOP ∧

FOLLOW