PHP中的boolean(布爾)類(lèi)型數(shù)據(jù)只有兩個(gè)值,即true和false。而在本文中,我們將重點(diǎn)關(guān)注PHP的boolean false值。
boolean false在PHP中有以下幾種情況:
//以下變量將會(huì)被認(rèn)為是false $bool = false; $bool = 0; $bool = 0.0; $bool = ""; $bool = "0"; $bool = null; $bool = array();
我們可以通過(guò)以下示例來(lái)理解上述情況。
$bool = false; if($bool){ echo "這里不會(huì)被執(zhí)行"; } $bool = 0; if($bool){ echo "這里不會(huì)被執(zhí)行"; } $bool = 0.0; if($bool){ echo "這里不會(huì)被執(zhí)行"; } $bool = ""; if($bool){ echo "這里不會(huì)被執(zhí)行"; } $bool = "0"; if($bool){ echo "這里不會(huì)被執(zhí)行"; } $bool = null; if($bool){ echo "這里不會(huì)被執(zhí)行"; } $bool = array(); if($bool){ echo "這里不會(huì)被執(zhí)行"; }
上述代碼中,在每一個(gè)if中,由于值都為boolean false,所以都不會(huì)執(zhí)行echo語(yǔ)句。
在一些函數(shù)中,當(dāng)返回值為false時(shí),表示函數(shù)執(zhí)行失敗或出現(xiàn)錯(cuò)誤。例如:
$file = "somefile.txt"; $data = file_get_contents($file); if($data === false){ echo "讀取文件失敗"; }
如果file_get_contents函數(shù)執(zhí)行失敗或出現(xiàn)錯(cuò)誤,將返回false值。因此,我們可以通過(guò)判斷返回值是否為false來(lái)判斷函數(shù)是否執(zhí)行成功。
還有一些關(guān)于boolean false的一些注意事項(xiàng):
- 當(dāng)使用loose comparison operator(==)時(shí),0、0.0、""、"0"均為相等于false的值,但是當(dāng)使用strict comparison operator(===)時(shí),只有false才等于false。
- 在if語(yǔ)句中,我們常常使用!$variable的形式來(lái)判斷變量是否為false,而不是使用$variable === false,這是因?yàn)楫?dāng)變量可能為null時(shí),使用前者的方式會(huì)更加簡(jiǎn)便。
boolean false在PHP中是一個(gè)非常重要的值,在我們的編程生涯中時(shí)常會(huì)大量使用到。希望本文能為讀者對(duì)boolean false有一個(gè)更加清晰的認(rèn)識(shí)。