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