首頁  >  文章  >  後端開發  >  PHP數組學習之二維數組計算數組長度

PHP數組學習之二維數組計算數組長度

青灯夜游
青灯夜游原創
2021-07-30 11:54:174221瀏覽

在先前的文章《PHP數組學習之二維數組創建方法淺析》中,我們介紹瞭如何創建二維數組(多維數組),感興趣的可以去看看。既然有了數組,那就要操作,有時就需要知道數組長度(數組中所有元素的個數)。那麼如何取得二維數組甚至多維數組的數組長度呢?今天我們就來和大家一起了解下。

一維數組的陣列長度我們知道怎麼獲取,很簡單,直接使用count($arr)就可以了。

<?php
header("Content-type:text/html;charset=utf-8");
$arr= array("香蕉","苹果","梨子","橙子","橘子","榴莲");
//输出语句
var_dump($arr);
echo "数组长度为:".count($arr);
?>

輸出結果:

PHP數組學習之二維數組計算數組長度

是不是很簡單,那是二維陣列呢?二維數組甚至多維數組如何計算數組長度,統計所以元素的個數?

二維陣列也簡單,還是使用count()函數,只需要給count()函數傳遞二個參數:第一個參數和上面一樣為$array,指定要計數的陣列;而第二個參數為$mode,值設定為COUNT_RECURSIVE1,這樣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()函數的流程。

PHP數組學習之二維數組計算數組長度

實例2:三維陣列的長度

<?php
header("Content-type:text/html;charset=utf-8");
$arr = array(
        &#39;安徽&#39; => array(
            &#39;合肥&#39;=>array(&#39;蜀山区&#39;,&#39;长丰县&#39;,&#39;肥东&#39;),
			&#39;宿州&#39;=>array(&#39;墉桥区&#39;,&#39;灵璧县&#39;,&#39;泗县&#39;)
        ),
        &#39;河南&#39; => array(
            &#39;洛阳&#39;=>array(&#39;西工区&#39;,&#39;老城区&#39;,&#39;孟津县&#39;),
            &#39;郑州市&#39;=>array(&#39;中原区&#39;,&#39;金水区&#39;)
        )
);
 var_dump($arr);
 echo "数组长度为:".count($arr,1);
?>

輸出結果:

PHP數組學習之二維數組計算數組長度

擴充知識:

計算陣列長度除了可以使用count()函數外,我們還能使用sizeof()函數。 sizeof()函數是count()函數的別名,其功能和使用方法與 count()函數完全一樣的。

好了就說到這裡了,有其他想知道的,可以點選這個喔。 → →php影片教學

最後推薦給大家一個PHP陣列的免費影片教學:PHP函數之array陣列函數影片講解,快來學習吧!

以上是PHP數組學習之二維數組計算數組長度的詳細內容。更多資訊請關注PHP中文網其他相關文章!

陳述:
本文內容由網友自願投稿,版權歸原作者所有。本站不承擔相應的法律責任。如發現涉嫌抄襲或侵權的內容,請聯絡admin@php.cn