在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)
?>