わかりましたので、PHP の奇妙な動作に気付きました。なぜこれが起こるのか知りたいです。したがって、次のコードを実行します。
var_dump( true and false ? 'one' : 'two' );
出力
boolean true
あなたが期待する「2」の代わりに...問題は「and」を使用しているようです。
ランニング:
var_dump( true && false ? 'one' : 'two' );
出力
string 'two' (length=3)
予想通り。「&&」の代わりに「and」を使用すると、この奇妙な動作が発生するのはなぜですか? それらは同じであるべきではありませんか?