1. 程式人生 > >PHP強化之08 - 型別的比較

PHP強化之08 - 型別的比較

----- 最後更新【2018-12-7】-----

一、False與NULL

1、False的七種情況
整型0、浮點0.0、布林false、空字串''、0字串'0'、空陣列[]、NULL。

2、NULL的三種情況:
被賦值為 NULL、尚未被賦值(或未定義的變數)、被 unset()。

二、使用PHP函式對變數$x進行比較

表示式 gettype() empty() is_null() isset() boolean:if($x)
$x = “”; string TRUE FALSE TRUE FALSE
$x = null; NULL TRUE TRUE FALSE FALSE
var $x; NULL TRUE TRUE FALSE FALSE
$x is undefined NULL TRUE TRUE FALSE FALSE
$x = array(); array TRUE FALSE TRUE FALSE
$x = false; boolean TRUE FALSE TRUE FALSE
$x = true; boolean FALSE FALSE TRUE TRUE
$x = 0; integer TRUE FALSE TRUE FALSE
$x = “0”; string TRUE FALSE TRUE FALSE

三、“==”與“===”

1、“==”與“===”的區別
==比較兩個變數的值,但不比較資料型別,屬於鬆散比較;而===即比較兩個變數的值,也比較它們的資料型別,屬於嚴格比較。

!=!==的區別是同樣的道理。

2、容易混淆的幾個比較:
1)[]==0false
2)[]==nulltrue
3)is_null([])false
4)0==0.0true0===0.0false

參考

官方手冊:http://php.net/manual/zh/types.comparisons.php