私のPHPコードのいくつかで、非常に奇妙で懸念すべき問題に遭遇しました。私が持っている変数は、明らかに false を返す必要がある場合に、IF ステートメントで true を返します。
$pr = $_SESSION['fin_print_printer']; //this should equal 0
print $pr; //this returns 0, as it should
if($pr == "L"){
print "local";
} else {
print "serve";
}
print $pr; //this returns 0 again, as it should
これにより、スクリプトに「ローカル」(2 つのゼロの間) が出力され、「サーブ」は出力されません。私のプロジェクトには 100,000 行を超えるコードがありますが、この問題はまだ経験しておらず、何が起こっているのかわかりません。
if($pr === "L") を実行すると、期待どおりに機能しますが、上記は機能しません。