【PHP】in_array()判斷時的一點兒小誤會
作者: 鄭曉 分類: PHP 發(fā)布于: 2012-10-11 23:23 瀏覽:5,999 評論(4)
知識是需要多鞏固的,尤其是一些很簡單的小知識,有時長時間不去接觸就容易忘。今天同事在使用in_array()時遇到一個小問題很是不解,后來查了下資料才發(fā)現(xiàn)自己基礎(chǔ)知識還是沒記好…
是這樣的,在使用in_array($k,$arr)來判斷$k是否在$arr數(shù)組中時,當(dāng)$k=0時,發(fā)現(xiàn)in_array()返回的是一個true。一開始很是不解,$arr中并沒有0這個值。后來在查資料時注意到“在數(shù)字與字符串進行比較與運算時,PHP會將字符串強制轉(zhuǎn)換成數(shù)字”,原因就在這里了,由于$arr數(shù)組中全是一些字符串的值,所以使用in_array()判斷時,php會先將字符串轉(zhuǎn)換成數(shù)字再進行判斷,而如果字符串是全是非數(shù)字時,php將其轉(zhuǎn)換成0,所以呢,判斷結(jié)束返回一個true也是可以理解了~~
一點兒小小的知識點直接反映出自己學(xué)習(xí)的不足,基礎(chǔ)不夠扎實就容易犯這種“病”,在一些本不該糾結(jié)的問題上去糾結(jié)…
PS:剛查了一下,發(fā)現(xiàn)我的博客關(guān)鍵詞“個人博客”已經(jīng)上到百度32位了…就是還沒有收錄,糾了個結(jié)的!
本文采用知識共享署名-非商業(yè)性使用 3.0 中國大陸許可協(xié)議進行許可,轉(zhuǎn)載時請注明出處及相應(yīng)鏈接。
本文永久鏈接: http://yjfs.org.cn/php-in_array-to-determine.html
過去百度沙盒就好了,加油,我們都在關(guān)注著你