hnwの日記

PHPカンファレンス関西2015でPHP7について発表してきました

去る5/30にPHPカンファレンス関西2015で基調講演をさせていただきました。今回は長い枠だったのもあって資料準備にかなりの時間をかけました。その甲斐あってか、好評だったようで何よりです。発表資料は以下になります。


質疑応答やその他の反応について補足

お伝えし忘れたことや誤解を招いた点があったかもしれませんので、4点ほど補足します。

「内部構造を変更したのだから、エクステンションごとにPHP7対応が必要なのではないか?」

その通りです。プレゼンでも紹介したzvalのポインタ参照が一段浅くなっていることや、内部APIが変更された影響があるため、PHP5用のエクステンションをPHP7でビルドしようとしても、そもそもコンパイルすら通らない可能性が高いです。xdebugなど内部構造と密接に関わるエクステンションほど対応に時間がかかるでしょう。


一方で、PHP本体に同梱のエクステンションは既にほぼ動作しています。まだ不穏なエクステンションも残っている気がしますが、beta1が出る頃には落ち着いてくれると期待しています。


また、外部でメンテされているものについても、mamcachedなど有名どころのエクステンションには随分前からPull Requestが出ていたりもします。PHP7リリースまでにはおおむね何とかなっているのではないでしょうか。


ちなみに、各エクステンションの対応状況をまとめているプロジェクトも存在します。


まだまだ空欄が目立つ状況ですが、少なくともPHP同梱のエクステンションについては対応が進んでいることが見て取れるかと思います。

「構文解釈が1フェーズ増えたということだが、構文解釈自体が遅くなったのか?」
続きを読む
'); $entries_chunk.insertBefore(sections[0]); } else { chunk_id += 1; var $prev_entries_chunk = $entries_chunk; var $read_more_link = $('

これ以前の記事を表示する

'); $read_more_link.on('click', {chunk_id: chunk_id}, function(e){ $(e.target).hide(); $(this).remove(); $('#entries-chunk-' + e.data.chunk_id).fadeIn("slow"); }); $prev_entries_chunk.append($read_more_link); var $entries_chunk = $('
'); $entries_chunk.hide(); $entries_chunk.insertAfter($prev_entries_chunk); } } $(sections[i]).appendTo($entries_chunk); } });