phpに関するtkzwtksのブックマーク (2)

  • PHPで面接に受かるたった1つの方法 - いぬビーム

    面接官「特技はマジッククォートとありますが?」 PHP 「はい。マジッククォートです」 面接官「マジッククォートとは何のことですか?」 PHP 「魔法です」 面接官「え、魔法?」 PHP 「はい。魔法です。リクエスト全部に大ダメージを与えます」 面接官「……で、そのマジッククォートは当社において働くうえで何のメリットがあるとお考えですか?」 PHP 「はい。ハッカーが襲って来ても守れます」 面接官「いや、当社にはエスケープを忘れるような輩はいません。それにサニタイズは犯罪ですよね」 PHP 「でも、インジェクションにも勝てますよ」 面接官「いや、勝つとかそういう問題じゃなくてですね……」 PHP 「入力全部にaddslashesを与えるんですよ」 面接官「ふざけないでください。それにaddslashesって何ですか。だいたい……」 PHP 「\を付与するんです。埋め込み先がHTMLでもお構

    PHPで面接に受かるたった1つの方法 - いぬビーム
    tkzwtks
    tkzwtks 2009/11/04
  • PHPの比較の素晴らしさ加減は正常

    if ("0x0A" == "10") { print '(´ε` )チュッ'; } チュッ。されちゃいます。 文字列であっても整数と解釈できる文字列の場合は勝手に型変換しやがる今世紀最大の愚行を犯してしまうってのは有名な話だよね。 文字列であっても整数と解釈できる文字列の場合は自動的に整数に型変換してくれる超便利機能があるってのは有名な話だよね。 だけどなんでコレが一致するかわけがわからんかった。 0x0Aは10進数で10になるので一致する。と、言いたいところなんですがそう単純な話じゃないんだ。 以下の例を目ん玉見開いて見て欲しい。 var_dump(0x0A); var_dump("0x0A"); var_dump((int)"0x0A"); var_dump((float)"0x0A"); var_dump(intval("0x0A")); 実行結果 int(10) string(4

    PHPの比較の素晴らしさ加減は正常
    tkzwtks
    tkzwtks 2009/06/17
    とても残念
  • 1