PHPユーザ会が主催する日本最大級のPHPのイベント「PHPカンファレンス2008」が2008年7月21日に開催された。今回のPHPウォッチでは,その模様をお伝えする。

PHPカンファレンスとは

PHPカンファレンス2008の会場
PHPカンファレンス2008の会場
[画像のクリックで拡大表示]

 PHPカンファレンスは,日本PHPユーザ会を中心として,ボランティア・ベースで運営されている。毎年夏に開催され,今年で9回目を迎える。会場には400名近い来場者が参加,その後続いて行われた懇親会にも150名を超える参加があった。

 カンファレンスは,テクニカルセッションとビギナーズセッションの2つのパートで構成される。テクニカルセッションは,PHPの現状と今後の動向を解説する基調講演から始まり,ぐるなび,楽天,サイボウズなど大規模アプリケーションでのPHPの導入事例紹介が行われた。PHP以外の言語をメインとする技術者をパネラーに集めた「激論!PHPの次に学ぶ言語はこれだ」と題したパネルディスカッションもあった。ビギナーズセッションでは,初心者向けのPHP入門セッションやセキュリティに関する話題,簡単にWebアプリケーションを構築できるCMSの活用方法などが紹介された。

PHPの今とこれから2008

 基調講演では,日本PHPユーザ会の廣川類氏がPHPの現状と今後の動向について解説した。

日本PHPユーザ会 廣川類氏によるPHPの現状と今後の動向についての解説
日本PHPユーザ会 廣川類氏によるPHPの現状と今後の動向についての解説(写真:日本PHPユーザ会 月宮紀柳氏)
[画像のクリックで拡大表示]

PHPの現状――PHP4系列のサポート停止

 最近のPHPをとりまく状況としては,フルスタック・フレームワークの整備・普及により,PHPによるWebアプリケーション構築環境の整備も進んでいる。また,Microsoft(IIS,FastCGI),IBM(Project Zero),Oracle(RDBMS)などの大手メーカーもPHPサポートを表明している。

 現行のPHPバージョンは5.2であるが,PHP5.3の開発がコミュニティで着々と進んでいる。5.3は,2008年10月ごろにリリース予定と言われており,その後,6.0がリリースされる予定である。PHP4系列のサポートは,2008年8月8日をもって,致命的なセキュリティ修正を含め完全に停止される。今後,PHP4系列を使い続けることはかなりハイリスクな状況と言える(注:その後,2008年8月7日 PHP4.4.9のリリースをもって完全にサポートを停止すると,PHP開発チームから正式な発表があった)。

 PHP5への移行する際の主な注意事項としては,オブジェクトの使い方,Zend Engine1互換モードが廃止されること,一部の関数処理の非互換などが挙げられる。詳しくは「PHP5への移行に関するPHPマニュアル」を参照してほしい。

 また,当初遅いと揶揄されていたPHP5ではあるが,現状では,PHP4.4よりもPHP5.2や5.3の方が,ハッシュ,マグネット集合などアルゴリズム系のベンチマークの実行時間の計測では,実行時間が短いとの結果が出ている。これらは,(1)Zend Engineの大幅な高速化,(2)メモリー使用の効率化などにより実現された。

次期リリース,バージョンPHP5.3の展望

 次期リリースであるバージョンのPHP5.3は,PHP6で実装が予定されていた新しい機能を先行してリリースするためのものであると言える。PHP6のリリース時期は,Unicode対応とエンジン自体の大幅な書換が難航しているため,来年以降になる見通しと言われている(注:2008年8月1日に,PHP5.3α1がリリース候補版としてリリースされている)。

 PHP5.3の主な追加機能は以下のとおり。

・レガシーコード整理:ZE1互換モード廃止
・E_STRICTをE_STRICTとE_DEPRECATEDに分離
・ガーベッジコレクタ改良:循環コレクタ
・Late Static Binding:スタティック宣言を実行時に解決
・Dynamic Static Call:動的変数によりスタティックコール
・名前空間:PHP6からバックポート
・ラムダ関数/クロージャ
・Pharアーカイブ対応:PHPアプリケーションの配布が容易に
・構文改良
・国際化エクステンション pecl/intl
・mysqlnd(MySQL Native Driver)
・OpenSSLエクステンションにOpenIDサポート追加

PHPと品質維持――高い品質(1000行に0.004行のコード欠陥)

 PHPはオープンソースであり,PHP自体,1000人以上の開発者が参画して開発を行っている。オープンソースで心配されるのがセキュリティに関する問題であるが,PHP自体の品質は高いと考えられる。

 PHP自体の品質を向上させるために結成されたPHP/QAチームは,現行バージョンPHP4.4,5.2,5.3についてPHPコードのテストを行っているが,おおよそ1000行あたりに,0.004行のコードの欠陥が見つかったと発表している。この数値は,他のオープンソースのコードと比較しても,非常に小さな値と言える。

 ただ,この結果を解釈する際に考慮しなければならない事項として,以下の2つの課題をあげておく。

1. すべてのPHPコードがテストされた訳ではないこと:コードカバレッジ率(=テストされたコード率)は,2008年8月14日現在,PHP4.4 39.1%,5.2 55.6%,5.3 66.6%となっている。詳しい結果はhttp://gcov.php.net/を参照。

2. 実際の開発ではフレームワークやライブラリなどPHP以外にも多くのツールを利用しているが,これらのテストは進んでいないこと

 コードカバレッジ率を大きくするためにも,是非,PHPユーザーの一員として,テストチームに参加してもらいたい。それがオープンソースソフトウエアの良さであり,参加することでコミュニティに貢献してほしい。

 また,PHPコード/アプリケーションの品質を向上させるためのテストツールとして,

・PHP_CodeSniffer(注:コーディング規約チェックツール。現行のバージョン1.1.0ではPHP5対応。)
・PHPUnit(注:ユニットテスト自動化ツール。現行のPHPUnit3では,PHP5対応。)
・Simple Test(注:ユニットテスト自動化ツール。現行のバージョン1.0.1では,PHP4.2からPHP5.2対応)
・Testing_Selenium(注:Webアプリケーションのテスト用ライブラリ)

などが挙げられる。

まとめ――オープンソース・コミュニティの活動への参加

 オープンソースの活力は常に改善・改良を求められることで維持される。安定した環境は実用的なシステムに有用ではあるが,進化は必然であり,新たな開発者(特に若い人)に,オープンソースコミュニティの活動に参加してもらいたいと考えている。

この先は会員の登録が必要です。有料会員(月額プラン)は申し込み初月無料!

日経 xTECHには有料記事(有料会員向けまたは定期購読者向け)、無料記事(登録会員向け)、フリー記事(誰でも閲覧可能)があります。有料記事でも、登録会員向け配信期間は登録会員への登録が必要な場合があります。有料会員と登録会員に関するFAQはこちら