PerlとPHPのシンタックス差異
ものすごく久し振りにPHPでコードを書く必要性に迫られているのだけど、Perlに慣れ過ぎていて些細なシンタックスで躓きまくり。
- sub {} ではなく function() {}
- elsif ではなく elseif
- splitの分割パターンはquoteで与える(正規表現が必要ないならexplodeを使う)
- eq や lt のような文字列用の比較演算子は存在しない
- 局所変数の宣言が存在しない
- ヒアドキュメントの記述が微妙に違う
$text = << "end_of_text"; (Perlの場合) end_of_text
$text = <<< end_of_text (PHPの場合) end_of_text;
新しい言語に手を染める際は、こういう身体に染み付いてる箇所で引っ掛かるうちが辛い。いや、PHPは一時期結構やってたはずなんですけどね。