php 比較運算 之 0 all

2021-08-22 04:41:16 字數 415 閱讀 1761

在php中,比較時,如下

var_dump(0 == 1); // false

var_dump(0 == (bool)'all'); // false

var_dump(0 == 'all'); // true, take care

var_dump(0 === 'all'); // false

很多同學應該都會納悶,為啥 0==』all『 居然為 true,按照其他語音(如c#等),預設的 應該是 int轉換成 string,或者兩種都轉換成bool比較,都不會成立。

此時,要注意在php中比較運算時,只要涉及到 比較乙個數字和字串或者比較涉及到數字內容的字串,則字串會被轉換成數值,並且按照數值來進行比較。

此時 ,intval(』all『)的值時等於0的,故有 0==『all' 為true 成立。

php 比較運算子

摘自 例子名稱結果 a b 等於true,如果 a 等於 b。a b 全等true,如果 a 等於 b,並且它們的型別也相同。php 4 引進 a b 不等true,如果 a 不等於 b。a b 不等true,如果 a 不等於 b。a b 非全等true,如果 a 不等於 b,或者它們的型別不同。p...

php中的比較,PHP比較運算子的詳細介紹

運算子是告訴編譯程式執行特定算術或邏輯操作的符號,通常與運算元一起構成乙個表示式,我們經常看到它會參與數 算或邏輯運算。php也包涵了很多的運算子,這篇文章詳細解讀一下其中很重要的比較運算子。比較運算子種類 如同它們名稱所暗示的,允許對兩個值進行比較。比較運算子有如下幾個 1 a b 大於 如果 a...

PHP中的比較運算子

一般來說,有以下規則 如果比較乙個數字和字串或者比較涉及到數字內容的字串,則字串會被轉換為數值並且比較按照數值來進行。但當用 或 進行比較時則不進行型別轉換,因為此時型別和數值都要比對。例如 var dump 0 a 0 0 true var dump 1 01 1 1 true var dump ...