やじうまWatch経由。
■Attacking PHP - Matzにっき
http://www.rubyist.net/~matz/20080126.html#p04
言いたいことを言ってくれたので満足。
ここんところ、PHPでセキュリティ的にも厳密なWebアプリケーションを書いてて発狂しそう。
今回は妥協しないと決めていても、なんど妥協したくなったことか!
厳密なアプリケーションを書くのにはサッパリ向いてないというのがよく分かりました。
とはいえ、PHPで厳密なWebアプリケーションを書かなければいけないときに
注意するポイントや、準備しなきゃいけないことや、いろいろなルールが学べたので
収穫がなかったわけではないです。
ま、二度とPHPで厳密なWebアプリケーションとか作らないと思うですが。
結局のところ、言語の向き不向きというヤツではないかなあ、と思ったのでした。
自分しかアクセスしなくて、DBへはReadしかしないアプリだったら、
PHPで5分で書いて、バグを潰しながら使うのが、一番効率よさそう。
あと === は使ってなくて、なんでかなーと思ったら、
if(なんちゃら)ってやったときに、確かにいろんなケースで勝手に false になるけど、
その全てのケースをイメージできてればいいんじゃないのかなー、と思ったけど、
精神的にかなりの負荷となってた気もするので、やっぱり嫌。
素直に === を使ってたほうが良かったかな。書き直そうかな。ううー。
変数の型が勝手に変わるのも、未だに慣れないかなあ。
厳密にキャストできないぶん、JavaScriptよりも質が悪いよね。
で、結論としては、諸悪の根源は、仕様がずいぶんいい加減なことじゃないかなー
と思う次第です。
さらに、ころころ変わるから、市井のサンプルコードが全く信用できないw
さ、愚痴もほどほどにして、残りをさっさと仕上げてしまおう。
コメントする
コメントしても反応がない場合は、気が付いてないだけですので、Twitterなどでつっついてください。