PHP 變量類型 === 比較不同系統環境的坑~

aowana 發布于 2018-12-27 18:20     分類:站長學院     來源:愛玩電腦     閱讀(395)    

最近給美女寫真網站開發了在線訂單功能,遇到了一個PHP的坑記錄一下。PHP全等 "==="在Windows系統與Linux系統結果并不一樣。

具體如下:

URL ->  http://www.tuba8.cn/?status=0

$status = intval($_GET['status']);

通過 intval 函數處理后值為  int 0 , 到這里并沒有任何錯誤,接下來就是PHP在 Windows和Linux系統不同的地方了。

代碼:

if ( $status==='0' ) { echo 'yes'; }

else { echo 'no'; }

本人的開發環境為Windows系統,一切正常輸出  yes 也就是說之間 intval() 處理后依然可以使用 === 匹配為字符型。

等我把代碼 up 到服務器上就出現問題了,經過排查發現 Linux系統 PHP有點不一樣。

需要將代碼修改成為:

if ( $status === 0 ) { echo 'yes'; }

也就是說 Linux系統 PHP 全等運算時會區別整數0和字符串0 。

記錄一筆,防坑!


標簽Tags:PHP

本站內容未經允許歡迎轉載但必須保留原出處鏈接,部分內容來源互聯網版權歸原作者所有。

贊 (2) 打賞
上一篇:SAE memcached 服務異常消費,官方竟然無法解決! 下一篇:沒有了

推薦閱讀

網友評論

頭像
推薦

歡迎訪問愛玩電腦網

分享最實用的電腦知識和應用技巧,關注IT行業資訊、學裝機、玩硬件還有各種搞機新姿勢~

 

覺得文章有用就打賞一下文章作者

支付寶掃一掃打賞
二維碼A
微信掃一掃打賞
二維碼B
内蒙古十一选五最新版开奖走势图