php獲取數組長度的方法,php爲我們提供了兩個函數可以計算一維數組長度,如count,sizeof都可以直接統計數組長度,還有獲取二維數組的方法。
在php中獲取數組長度方法很簡單,php爲我們提供了兩個函數可以計算一維數組長度,如count,sizeof都可以直接統計數組長度哦,下面我們來看幾個實例吧。
php如何獲取數組的長度,使用php函數count(),或是sizeof()
例如:
$arr = Array('0','1','2','3','4'); echo count($arr); // 輸出 5 $arr = array('A','B','C'); echo sizeof($arr); //輸出3
sizeof()和count()具有同樣的用途,這兩個函數都可以返回數組元素個數.可以得到一個常規標量變量中的元素個數,如果傳遞給這個函數的數組是一個空數組,或者是一個沒有經過設定的變量,返回的數組元素個數就是0;
兩函數功能一樣,手冊上講,sizeof()是函數count()的別名。
那麼多維數組長度要怎麼統計呢?繼續看例子
比如你讀取的數組是一個二維數組:
<?php $arr=array( 0=>array('title' => '新聞1', 'viewnum' => 123, 'content' => 'ZAQXSWedcrfv'), 1=>array('title' => '新聞2', 'viewnum' => 99, 'content' => 'QWERTYUIOPZXCVBNM') ); ?>
如果你想統計數組$arr的長度,也就是說該二維數組只有兩條新聞,你想要的數字也是2,但是如果使用count($arr)不同版本的php,統計的結果是不一樣的;
後來在php手冊中發現,count函數還有第二個參數,解釋如下:
count函數有兩個參數:
0(或COUNT_NORMAL)爲默認,不檢測多維數組(數組中的數組);
1(或COUNT_RECURSIVE)爲檢測多維數組,
所以如果要判斷讀取的數組$arr是不是有新聞信息,就要這樣寫了:
<?php if(is_array($arr) && count($arr,COUNT_NORMAL)>0 ) { ..... } else { ..... } ?>
你可以使用這樣的代碼來測試該函數:
<?php $arr=array( 0=>array('title' => '新聞1', 'viewnum' => 123, 'content' => 'ZAQXSWedcrfv'), 1=>array('title' => '新聞2', 'viewnum' => 99, 'content' => 'QWERTYUIOPZXCVBNM') ); echo '不統計多維數組:'.count($arr,0);//count($arr,COUNT_NORMAL) echo "<br/>"; echo '統計多維數組:'.count($arr,1);//count($arr,COUNT_RECURSIVE) ?>
實際環境中我們大多數情況下都是用array().length獲取長度即可。