鍍金池/ 問答/PHP  HTML/ 0與1什么情況下會返回true?

0與1什么情況下會返回true?

今天碰到一個bug怎么都解決不了,回去打印代碼,居然發(fā)現(xiàn)一個讓我折騰半天無法理解的地方,

貼上部分代碼:

clipboard.png

clipboard.png

上述$data的值是從spray_type()中取的,$val是從外部傳過來的一個參

結果:

clipboard.png

這是怎么回事?想不通呀,有人知道嗎

附上var_dump內容:

clipboard.png

回答
編輯回答
大濕胸

$item[$valueParam]是int,$val是string,而你使用2個等於符號( == )會忽略類型檢查,同時進行類型轉換,string會轉換成數(shù)值'0' ,所以就返回true。

使用 === 或 !== 則不會進行類型轉換。

參考:
http://php.net/manual/en/lang...

2018年6月13日 16:50
編輯回答
毀了心

1.代碼貼全
2.前兩個別echo,類型打印出來

2017年12月14日 05:59