Engineer as a Lifestyle @tenkoma

What We Find Changes Who We Become -- Peter Morville『アンビエント・ファインダビリティ 』

第29回PHP勉強会に参加した

第29回PHP勉強会
会場はトライコーン株式会社
15分遅刻。
ちょうど、自分の自己紹介の直前に入場しました。

全体的な感想

全体的に肉ネタが多い。
CakePHP勉強会とはほとんど参加者がかぶらない。
持参するマシンが、MacとLet's Noteばっかりだ。

30分で振り返る2007年のPHP (yandoさん)

時系列でご説明されてました、が、まとめると、

正規表現と最長一致 (hanawaさん)

  • 正規表現が苦手な人→たくさん(笑)
  • サブリミナル肉
  • 最長一致とは
    • greedy matching(最長一致と訳すと間違い)
    • longest matching
  • POSIX互換:最長一致
  • PCRE:欲張りマッチング
  • <.*>と書かずに
    • <[^<>]*> もしくは
    • <.*?>

PCREってなんだろ、と思っていま調べたら、「Perl-compatible regular expressions」の頭字語ぽい。
僕はPHPのマニュアルにereg系よりpreg系の方が多くの場合、早く動作するって書いてあったのと、Pythonperl互換正規表現が使えるのと、正規表現テストツールのredemo.pyがperl互換だし、ということでpregの方をほとんど使ってました。
詳説正規表現を見てみると、*,+,?は欲張り量指定子と書かれていて、*?,+?,??は非欲張り〜でした。

PHPにおける型変換の世界 (i_ogiさん)

  • 象のぬいぐるみ
  • 文字列 == 0 → true ??(某サイト)
  • use ===
  • NULLとの比較
    • NULLは比較されるときboolに変換される、が、相手が文字列だと""に変換
    • PHP: 比較演算子 - Manualさまざまな型の比較
  • リソース型は数値として比較
  • 10進数の数値文字列OK
  • 8進数の数値文字列、無視されて10進数
  • 16進数〃、明示的な型キャスト(int)"0x10"→0
  • operator extension

今の僕には充分カオス

その他

LTまではレポートしきれないです。すみません。
みなさんお疲れ様でした。