PHPの嫌な点
2007年12月7日
「言語なんてPHPだけでいいじゃん」というような会話がありまして、
その時に相手にささるような反撃ができなかったのが心残り。
・・・ので、今度は上手くやるぜぇと、PHPをDISらせたら西日本屈指のnobuさんに助力を頼んでリスト化してみた。
その時に相手にささるような反撃ができなかったのが心残り。
・・・ので、今度は上手くやるぜぇと、PHPをDISらせたら西日本屈指のnobuさんに助力を頼んでリスト化してみた。
Let’s disrespect!
- 変数のスコープが不完全・・・クロージャが作れない
- 無名関数が無い・・・create_function(笑)
- メソッドチェインが無い・・・PHP5で追加されたと聞いてたのに、あれかよ
- 型が曖昧すぎる・・・ $str == “” と empty($str) とか、どうにかしろよ
- 後方互換用の関数が多い・・・mysql_escape_string と mysql_real_escape_string とか、httpspecialcharsの第2引数とか、誤った方でもとりあえず動くので、細かい間違いが放置されたままになり易い
- 例外処理が悪い・・・set_error_handlerを設定しないとFatalErrorで実行が止まる
- ネイティブ関数はアンダースコア表記なのに、メソッドはキャメルキャプス・・・PEARが悪いのか?
- 代表されるframeworkが無い・・・PHP5リリースとZendFrameworkリリースが近ければ変わったかもしれないけど
- 信頼出来るライブラリが無い・・・Rubyならgems・Pythonならsetuptools。PHPだとPEARなんだけど、何度中身を見るハメになったことか
- php.iniとconfigureオプションが冗長・・・php.iniの設定項目が多すぎて把握しきれない。同じくconfigureオプションも項目が多すぎる。「本番サーバで動かない!」→「php.iniの1項目が違った」
- PHP6からgoto文がサポートされる・・・nobu「さらにクソ度合いが抜群に上がります。」
こんなところすかね
ちょっと前はこういう風に思ってたんですけど、JSをやりRubyをやりASをやったら、恩義だけという対象になりつつあるような。
【追記】
メソッドチェインが無いというのを足した。Yahooおおおお!
メソッドチェインが無いというのを足した。Yahooおおおお!