Как получить количество значений из многомерного массива? PHP / Laravel - PullRequest
1 голос
/ 21 апреля 2020

Я пытаюсь посчитать значения этого массива:

array:5 [▼
 "layout/theme.liquid" => array:5 [▶]
 "sections/featured-product.liquid" => array:1 [▶]
 "sections/header.liquid" => array:2 [▶]
 "templates/article.liquid" => array:1 [▶]
 "templates/product.liquid" => array:1 [▶]
]

Моя цель - подсчитать в этом массиве, сколько существует массивов? Ответ 10, но застрял при попытке правильно написать код.

Пример массива показан как dd(count($jsonLdAssets));

Ответы [ 2 ]

2 голосов
/ 21 апреля 2020

используйте foreach l oop и сосчитайте их всех:

$main_array => array:5 [▼
 "layout/theme.liquid" => array:5 [▶]
 "sections/featured-product.liquid" => array:1 [▶]
 "sections/header.liquid" => array:2 [▶]
 "templates/article.liquid" => array:1 [▶]
 "templates/product.liquid" => array:1 [▶]
];
$total_count=0;

foreach ($main_array as $arr) {
    $total_count+=count($arr);
}

dd($total_count);

 //output : 10
1 голос
/ 21 апреля 2020

Вы можете сделать это:

$countTotal = 0;

foreach ($jsonLdAssets as $asset) {
    $countTotal = $countTotal + count($asset);
}

dd($countTotal);
...