標籤:php
最近比較喜歡摳細節,因為這些細節對於代碼的編寫以及bug 尋找非常有協助,能夠很大程度上提高項目的開發速度.
廢話少說,我們開始講解 php Boolean.
首先,boolean 型是 php的基礎資料型別 (Elementary Data Type), 它要麼是true,或者false. 大小寫不區分.
如果需要將其他類型轉換為bool類型的時候, 可以使用(bool) 或者(boolean),(Boolean)進行轉換.
如
echo true === (bool)-1;echo true === (boolean)-1;echo true === (Boolean)-1;
public function test_true () {$this->assertTrue(-1 == true); //-1=> true$this->assertTrue("false" == true); //"false" => true$this->assertTrue("null" == true); //"null" => true$this->assertTrue("0.0" == true); //"0.0" => true$this->assertTrue((bool)-1);$this->assertTrue((boolean)-1);$this->assertTrue((Boolean)-1);}public function test_false () {$this->assertTrue (null == false);//null => false$this->assertTrue (0 == false); //0 => false$this->assertTrue (0.0 == false); //0.0 => false$this->assertTrue ("" == false); //"" => false$this->assertFalse (" " == false); //" " => true}
以上是我寫的兩個簡單的測試案例. 全部都斷言成功.
-1 == true 結果為true.
同理 null == false 結果也為true .
就是非嚴格的類型比對.
還有要注意搞清楚 bool , boolean , Boolean . 其實應該是沒有太大區別的. 但是始終要記住, 它只是基本的資料類型,並沒有什麼類的概念...