参加しました記事はまた別で書きます。書きました → YAPC::Asia Tokyo 2015 参加してきました - Thanks Driven Life
- (昔の) PHP が誇った最高の機能 register_globals の真実、そして未来へ - YAPC::Asia Tokyo 2015
- Lightning Talks Day 1 - YAPC::Asia Tokyo 2015
- Lightning Talks (Aug 21) | 8月21日のLT | YAPC::Asia Tokyo 2015
発表直前
「register_globalsさーん、LT発表するregister_globalsさーん」「あ、はーい」 #yapcasia
— Wataru MIYAGUNI (@gongoZ) August 21, 2015
発表しました。
スライド
69ページ辺りで銅鑼が鳴り、LT 力不足が露見しました。最後まで行けなかったのは心残りですが、笑ってくれれば僕としては満足です。 残りのスライドで、書かれてること以外に言うことはなかったので、あとはスライドで補完していただければと思います。
ドキュメントに載ってない仕様について
ネタっぽく喋りましたが、当時この現象と直面した時は
- php.net に載ってない
- ググっても出てこない(みんな
extract($_FILES)
で余裕かましてた)
という状況で、仕方なく PHP 5.3.29 のソースコードを読んで*1、どうにか確信に近いものを手に入れました。
「載ってないなら自分から php.net にコミットするべきか?」とも思ったのですが、 今更 PHP 5.3 以下向けのドキュメント更新してもな?という気持ちがありました。単にめんどくさかったとも言います。
会場でも挙手をお願いした時、何人か PHP 5.3 以下を使用中という方々も居らっしゃったので
少しでもこのスライドがみなさまの register_globals
撲滅の助けになればいいなと思います。
merciful_polluter
について
PHP 5.4 以上でも register_globals を再現するライブラリ MercifulPolluter - Qiita
作成した理由としては以下のとおりです。
- 面白ろ4割
- packagist でライブラリUPしてみたかった3割
- 高まって欲しくない実用性3割
本体のコード200行、テストコード含めても500行ぐらいの軽いライブラリなので、 もし怪しいところがあっても、そこそこ手を加えやすくなってると思います。
発表について
- みんな「採択されたトークは当日発表します!」という状況できっちり仕上げてきててすごい…
- 国際会議場の壇上すごい緊張しました(会場キャパは1000人なので、おそらく950人ぐらいはいた)
まとめ
本セッショントークでは落選してしまいましたが、LT 採用されてある意味本セッションよりも面白い壇上(通常であればキーノートレベルしかできないところ)に立つことができたので 結果的に良かったかなと思います。みなさん PHP がんばりましょう!!