新聞中心
本教程操作環(huán)境:windows7系統(tǒng)、php7.1版、DELL G3電腦

在php中,可利用count()函數(shù)來判斷。
方案原理:
count ( mixed $var [, int $mode ] ) – 計(jì)算數(shù)組中的單元數(shù)目或?qū)ο笾械膶傩詡€(gè)數(shù)
$mode:為可選參數(shù),可以省略。
-
如果省略 $mode 參數(shù),或者將其設(shè)置為 COUNT_NORMAL 或者 0,count() 函數(shù)將不檢測多維數(shù)組;
-
如果 $mode 設(shè)置為 COUNT_RECURSIVE 或者 1,count() 函數(shù)將遞歸計(jì)算數(shù)組中元素的個(gè)數(shù),對于計(jì)算多維數(shù)組的元素個(gè)數(shù)尤為有用。
如果省略 $mode 參數(shù),count則不檢測多維數(shù)組,將只獲取一維的元素個(gè)數(shù)。
因此只需要比較一下省略$mode參數(shù)和不省略$mode參數(shù)時(shí),獲取的長度是否一樣即可判斷是一維數(shù)組還是二維數(shù)組。
-
$mode參數(shù)示例:
不遞歸檢測數(shù)組,長度為:".count($arr); ?>
輸出:
數(shù)組長度為:6 不遞歸檢測數(shù)組,長度為:3
看了上面的輸出結(jié)果,是不是感到疑惑,數(shù)組中不是只有5個(gè)元素("張三"、25、"高數(shù)"、"PHP教程"、"英語")嗎,為什么結(jié)果顯示的數(shù)組長度不是5,而是6呢?
其實(shí)是因?yàn)?,此時(shí)count()函數(shù)循環(huán)統(tǒng)計(jì)二維數(shù)組中的所有元素,“array("高數(shù)","PHP教程","英語")”會被當(dāng)做一個(gè)整體統(tǒng)計(jì)一次,它里面的元素("高數(shù)"、"PHP教程"、"英語")又會被統(tǒng)計(jì)一次,所以最終結(jié)果為 6。
文章標(biāo)題:php怎么判斷是一維數(shù)組還是二維數(shù)組
當(dāng)前地址:http://www.5511xx.com/article/dpgdhcs.html


咨詢
建站咨詢
