タグ

関連タグで絞り込む (2)

タグの絞り込みを解除

PHPとネタに関するcubed-lのブックマーク (2)

  • RubyがPHPに勝つにはメソッド呼び出しのための新しい演算子が必要 - kなんとかの日記

    PHPerがRubyを触り始めて最初に不機嫌になるのは、空文字列が偽ではないことだ。つまり、PHPなら「if ($var)」で済むのが、Rubyだと「if !var.empty?」と書かなければならない。これでPHPerは不機嫌になる (まあ気持ちは分かる)。 if ($var) ... # PHP if !var.empty? ... # Rubyそれだけならいい。もし値がnilである可能性があるなら、Rubyでは「if var && !var.empty?」と書かなければいけない。この時点でPHPerは不機嫌どころかブチ切れる。なんでこんなに書かなきゃいけないんだ!? PHPなら「if ($var)」で済むのに!! SHIIIIT!! if ($var) ... # PHP if var && !var.empty? ... # Rubyここで、「空文字列が偽になるような言語仕様こそク

    RubyがPHPに勝つにはメソッド呼び出しのための新しい演算子が必要 - kなんとかの日記
    cubed-l
    cubed-l 2010/02/01
    さすがはロシアだ
  • 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の比較の素晴らしさ加減は正常
  • 1