PHPプログラムに関する各種メモ書き

PHPで文字列を比較するときに == は絶対に使ってはいけない。

PHPで文字列を比較するときに == は絶対に使ってはいけない。

というのを意外とみなさん知らないようで、改めてここに記述しておきます。

参考:がるの健忘録 - 素晴らしき自動的な世界〜或いは「型のない」世界〜

参考:がるの健忘録

参考:zuzara : PHPの比較演算子($a == $b)で注意が必要なとき

参考:PHPの文字列比較で気をつけるべきこと - 暗黙の型変換 - EC studio 技術ブログ

Perlだと文字列比較は

if ( $a eq $b ){ print '同じです'; }

PHPだと

if ( strcmp($a,$b)==0 ){ print '同じです'; }

と書くのがいいでしょう。

また

if ( $a===$b ){ print '同じです'; }

と(===による厳密な比較)も有効でしょう。↓こちらは要チェックです

PHP 型の比較表

No.506
03/16 14:01

edit