爲什麼PHP在邏輯AND返回FALSE時返回0
,但當條件AND返回FALSE時不返回0
?證人:爲什麼PHP在邏輯AND上不返回'0'作爲FALSE?
php > function a(){
php { echo "a";
php { return FALSE;
php { }
php > function b(){
php { echo "b";
php { return TRUE;
php { }
php > echo (a() && b())."\n";
a
php >
php > echo (a() & b())."\n";
ab0
php >
注意,第二echo
語句0
結束,但先不。爲什麼?
它應該返回一個T_PARSE錯誤,因爲aa()是未定義的。 – Tularis
您未測試返回值。您正在測試鑄造到字符串。 –
你在這個鏈接中有一個解釋http://stackoverflow.com/questions/2376348/difference-between-and-in-php –