国产xxxx99真实实拍_久久不雅视频_高清韩国a级特黄毛片_嗯老师别我我受不了了小说

資訊專欄INFORMATION COLUMN

php統(tǒng)計(jì)多維數(shù)組的元素個數(shù)

ytwman / 2063人閱讀

摘要:一般情況下,使用可以直接統(tǒng)計(jì)數(shù)組的元素個數(shù)但是遇到二位數(shù)組的時候,我們想統(tǒng)計(jì)第二層的元素個數(shù),這個時候可以使用函數(shù)的第二個參數(shù),統(tǒng)計(jì)一維的所有元素,循環(huán)統(tǒng)計(jì)遍歷元素在的時候,函數(shù)會循環(huán)統(tǒng)計(jì)元素的個數(shù),如果元素是個數(shù)組則數(shù)量會總數(shù)會增加元素?cái)?shù)

一般情況下,使用count可以直接統(tǒng)計(jì)數(shù)組的元素個數(shù)
$arr = [

"a",
"b",

];
echo count($arr);//2
但是遇到二位數(shù)組的時候,我們想統(tǒng)計(jì)第二層的元素個數(shù),這個時候可以使用count函數(shù)的第二個參數(shù),
count($arr, $mode = 0);$mode(0:統(tǒng)計(jì)一維的所有元素,1:循環(huán)統(tǒng)計(jì)遍歷元素)
在$mode=1的時候,count函數(shù)會循環(huán)統(tǒng)計(jì)元素的個數(shù),如果元素$a是個數(shù)組則數(shù)量會總數(shù)會增加$a元素?cái)?shù)加1;
$arr = [

"a" => "b",
"c" => [
    "d",
],

];
echo count($arr, 1);//3("b",["d"],"d")
只要二維數(shù)組有規(guī)律,則可以很方便的統(tǒng)計(jì)二維的元素個數(shù)
$arr = [

"a" => [
    "d",
    "e",
],
"c" => [
    "d",
    "g",
],

];
echo count($arr, 1) - count($arr);//4
使用array_map也可以
$arrCount = 0;
$countFun = function($a) use(&$arrCount) {

$arrCount += count($a);
return $arrCount;

};
array_map($countFun,$arr);
echo $arrCount;
記住$arrCount一定要引用傳值
如果要統(tǒng)計(jì)三維數(shù)組的元素個數(shù)
$arr = [

"a" => [
   "b" => [
       "d",
       "e",
       "g",
   ],
],
"c" => [
    "d" => [
        "d",
        "g",
    ],
],

];
$arrCount = 0;
$countFun = function($a) use(&$arrCount) {

$arrCount += count($a, 1) - count($a);
return $arrCount;

};
array_map($countFun,$arr);
echo $arrCount;
如果要統(tǒng)計(jì)四維數(shù)組的元素個數(shù)
$arr = [

"a" => [
   "b" => [
       "d" => [
           "e",
           "g",
       ],
   ],
],
"c" => [
    "d" => [
        "d" => [
            "e",
            "g",
            "f"
        ],
    ],
],

];
$arrCount = 0;
$napFun = function($a) use(&$arrCount) {

$countFun = function($a) use(&$arrCount) {
    $arrCount += count($a, 1) - count($a);
    return $arrCount;
};
array_map($countFun,$a);
return $arrCount;

};
array_map($napFun,$arr);
echo $arrCount;
如果是統(tǒng)計(jì)3維或更高維度的建議使用遞歸的方法
$arr = [

"a" => [
    "b" => [
       "d" => [
           "e",
           "g",
       ],
    ],
],
"c" => [
    "d" => [
        "d" => [
            "e",
            "g",
            "f"
        ],
    ],
],

];
function arrCount($arr, &$arrCount, $level){

if(0 === $level){
    $arrCount += count($arr);
    print_r($arr);
}else{
    $level--;
    foreach($arr as $a){
        arrCount($a, $arrCount, $level);
    }
}

}
$count = 0;
$level = 3;
arrCount($arr,$count,$level);
echo $count;

文章版權(quán)歸作者所有,未經(jīng)允許請勿轉(zhuǎn)載,若此文章存在違規(guī)行為,您可以聯(lián)系管理員刪除。

轉(zhuǎn)載請注明本文地址:http://specialneedsforspecialkids.com/yun/31063.html

相關(guān)文章

  • Python Numpy面向數(shù)組編程該怎么進(jìn)行操作

      小編寫這篇文章的主要目的,就是給大家來做一個詳細(xì)的介紹,介紹關(guān)于Python Numpy的一些知識,比如在面向數(shù)組編程的時候,我們需要怎么進(jìn)行操作,下面就給大家詳細(xì)解答下。  數(shù)組編程  使用Numpy數(shù)組可以使你利用簡單的數(shù)組表達(dá)式完成多項(xiàng)數(shù)據(jù)操作任務(wù),而不需要編寫大量的循環(huán),這個極大的幫助了我們高效的解決問題。  我們都知道向量化的數(shù)組操作比純Python的等價(jià)實(shí)現(xiàn)在速度這一方面快很多,至...

    89542767 評論0 收藏0
  • [PHP源碼閱讀]count函數(shù)

    摘要:源碼解讀如果是普通數(shù)組,函數(shù)會調(diào)用函數(shù)實(shí)現(xiàn)其功能的運(yùn)行步驟如下如果當(dāng)前被遞歸訪問的次數(shù)大于,說明重復(fù)遞歸,染回錯誤否則計(jì)算當(dāng)前數(shù)組層數(shù)的數(shù)組元素個數(shù)如果有遞歸參數(shù)選項(xiàng),則繼續(xù)遞歸訪問如果參數(shù)是對象類型,實(shí)現(xiàn)時會先判斷是否被定義。 在PHP編程中,在遍歷數(shù)組的時候經(jīng)常需要先計(jì)算數(shù)組的長度作為循環(huán)結(jié)束的判斷條件,而在PHP里面對數(shù)組的操作是很頻繁的,因此count也算是一個常用函數(shù),下面研...

    shiguibiao 評論0 收藏0
  • PHP入門數(shù)組操作詳解

    摘要:像其他變量一樣,使用運(yùn)算符可以改變數(shù)組元素的內(nèi)容。數(shù)組的基本操作定義數(shù)組在中聲明數(shù)組的方式主要有兩種用函數(shù)聲明數(shù)組,直接為數(shù)組元素賦值。 概述要訪問一個變量的內(nèi)容,可以直接使用其名稱。如果該變量是一個數(shù)組,可以使用變量名稱和關(guān)鍵字或索引的組合來訪問其內(nèi)容。 像其他變量一樣,使用運(yùn)算符=可以改變數(shù)組元素的內(nèi)容。數(shù)組單元可以通過 array[key] 語法來訪問。showImg(https...

    ?xiaoxiao, 評論0 收藏0
  • PHP常用180函數(shù)總結(jié)

    摘要:輸入兩個數(shù)組輸出返回完成后的數(shù)組在數(shù)組中根據(jù)條件取出一段值,并返回。如果要再用遍歷數(shù)組,必須使用。返回值數(shù)組中當(dāng)前指針位置的鍵值對并向前移動數(shù)組指針。鍵值對被返回為四個單元的數(shù)組,鍵名為,,和。 數(shù)學(xué)函數(shù) 1.abs(): 求絕對值 $abs = abs(-4.2); //4.2 輸入: 數(shù)字 輸出: 絕對值數(shù)字 2.ceil(): 進(jìn)一法取整 echo ceil(9.999); /...

    HtmlCssJs 評論0 收藏0
  • Numpy 中文用戶指南 1. 安裝

    摘要:包的核心是對象。但有個例外,包括對象數(shù)組的元素大小是不同的。序列大小和速度在科學(xué)計(jì)算中尤為重要。例如考慮兩個長度相同的列表中每個元素相乘的情況。此外,編碼所需的工作量隨數(shù)據(jù)維數(shù)的增加而增加。這些信息主要用于高級用戶。 譯者:飛龍 1.1 NumPy 是什么? 原文:What is NumPy? NumPy是Python中用于科學(xué)計(jì)算的基礎(chǔ)包。它是一個Python庫,提供多維數(shù)組對象,各...

    mochixuan 評論0 收藏0

發(fā)表評論

0條評論

最新活動
閱讀需要支付1元查看
<