變數轉化為判斷條件時的各種情況

熊能發表於2019-06-13
  1. 無論是強型別還是弱型別,變數都具有兩個屬性:型別和值,只不過強型別的語言的變數需要申明,而弱型別語言(PHP)無需宣告,但這並不意味著弱型別語言的變數沒有型別的概念了。舉例來說,PHP的gettype方法就是返回該變數“當前”的型別。
  2. PHP變數的型別是可以隨需一直改變的,比如字串可以和數字相加。弱型別有時顯得很方便,有時卻又極易出錯。 不希望因為這些小問題影響了開發效率,所以乾脆一次性全部總結完。

false、空字串、null、空陣列、0和空格,這六個值分別使用is_null、empty、isset、(bool)、(int) 進行處理,觀察其結果(用於測試的PHP版本為5.6)。

  1. null等同於未定義,只有使用is_null對其判斷時返回ture
  2. 僅當有內容時(空格也算內容),對其使用empty判斷,返回true
  3. 僅當null或未定義時,使用isset判斷,返回false
  4. 轉化bool值的規律和empty判斷正好相反
  5. 無論何種情況以上值都會被int轉化為0

變數轉化為判斷條件時的各種情況

相關文章