在之前的文章《PHP數組學習之二維數組創建方法淺析》中,我們介紹了如何創建二維數組(多維數組),感興趣的可以去看看。既然有了數組,那就要操作,有時就需要知道數組長度(數組中所有元素的個數)。那么如何獲取二維數組甚至多維數組的數組長度呢?今天我們就來和大家一起了解下。
一維數組的數組長度我們知道怎么獲取,很簡單,直接使用count($arr)
就可以了。
<?php header("Content-type:text/html;charset=utf-8"); $arr= array("香蕉","蘋果","梨子","橙子","橘子","榴蓮"); //輸出語句 var_dump($arr); echo "數組長度為:".count($arr); ?>
輸出結果:
是不是很簡單,那么二維數組呢?二維數組甚至多維數組如何計算數組長度,統計所以元素的個數?
二維數組也簡單,還是使用count()函數,只需要給count()函數傳遞二個參數:第一個參數和上面一樣為$array,指定要計數的數組;而第二個參數為$mode
,值設置為 COUNT_RECURSIVE
或者 1
,這樣count()函數就會遞歸地計算出數組中元素個數。
下面我們通過兩個代碼實例來具體了解下,利用count()函數如何通過多維數組的數組長度。
實例1:二維數組的長度
<?php header("Content-type:text/html;charset=utf-8"); $arr= array ("張三", 25, array("高數","PHP教程","英語"), ); //輸出語句 echo "數組長度為:".count($arr,1); ?>
輸出:
數組長度為:6
看了上面的輸出結果,是不是感到疑惑,數組中不是只有5個元素("張三"
、25
、"高數"
、"PHP教程"
、"英語"
)嗎,為什么結果顯示的數組長度不是5,而是6呢?
其實是因為,此時count()函數循環統計二維數組中的所有元素,“array("高數","PHP教程","英語")
”會被當做一個整體統計一次,它里面的元素("高數"
、"PHP教程"
、"英語"
)又會被統計一次,所以最終結果為 6。
我們通過var_dump()函數輸出$arr數組,看看它的數據結構,可以直觀的了解count()函數的流程。
實例2:三維數組的長度
<?php header("Content-type:text/html;charset=utf-8"); $arr = array( '安徽' => array( '合肥'=>array('蜀山區','長豐縣','肥東'), '宿州'=>array('墉橋區','靈璧縣','泗縣') ), '河南' => array( '洛陽'=>array('西工區','老城區','孟津縣'), '鄭州市'=>array('中原區','金水區') ) ); var_dump($arr); echo "數組長度為:".count($arr,1); ?>
輸出結果:
擴展知識:
計算數組長度除了可以使用count()函數外,我們還能使用sizeof()函數。sizeof()函數是count()函數的別名,其功能和使用方法與 count()函數完全一樣的。
好了就說到這里了,有其他想知道的,可以點擊這個哦。→ →php視頻教程
最后給大家推薦一個PHP數組的免費視頻教程:PHP函數之array數組函數視頻講解,快來學習吧!