2017-01-12 60 views
0

對不起我的純英文。 我需要計算一個數組的子節點。我的數組輸出如下。 我能夠計算第一步,但我需要計算第二步中的[地址]值。計數數組的孩子

Array 
(
    [0] => Array 
     (
      [name] => John Doe 
      [address] => Array 
       (
        [0] => Los Angeles 
        [1] => San Francisco 
       ) 

      [presenter] => Array 
       (
        [0] => 1 
       ) 

     ) 
    [1] => Array 
     (
      [name] => Jane Doe 
      [address] => Array 
       (
        [0] => New York 
        [1] => Chicago 
       ) 

      [presenter] => Array 
       (
        [0] => 0 
       ) 

     ) 
) 
+0

'$計數=計數($ myarray的[0] [ '地址'];' –

+0

非常感謝你對你的答案就像一個魅力:)。 – InTeGeR

回答

0

如果您需要統計所有的地址值,有多種方法可以做到這一點。這裏有幾個可能的原因:

$address_count = array_reduce($your_array, function($count, $item) { 
    return $count + count($item['address']); 
}, 0); 

// or 

$address_count = array_sum(array_map('count', array_column($your_array, 'address'))); 

// or 

$address_count = 0; 
foreach ($your_array as $item) { 
    $address_count += count($item['address']); 
}