2016-12-16 35 views
2

我有一个PHP数组,我想通过编号来计算有多少项目按发生存在一个增量count_giga_winz属性COUNT occurence

array(
(int) 0 => array(
    'g' => array(
     'id' => '13', 
     'photoCadeau' => 'gigawinz-mini-cooper.jpg', 
     'photoDetail' => 'giga2-hover.png' 
    ), 
    (int) 0 => array(
     'count_giga_winz' => '1' 
    ) 
), 
(int) 1 => array(
    'g' => array(
     'id' => '14', 
     'photoCadeau' => 'w3.jpg', 
     'photoDetail' => 'w3.jpg' 
    ), 
    (int) 0 => array(
     'count_giga_winz' => '1' 
    ) 
), 
(int) 2 => array(
    'g' => array(
     'id' => '14', 
     'photoCadeau' => 'w3.jpg', 
     'photoDetail' => 'w3.jpg' 
    ), 
    (int) 0 => array(
     'count_giga_winz' => '1' 
    ) 
) 
) 

我想指望通过ID,我看到了重复的问题,但它并没有为我工作

+0

你有你已经尝试过任何的例子吗?您应该可以简单地使用'for'循环并计算'item_array [i] [0] [0] == $ match_val'的位置。另外,'count_giga_winz'的放置似乎没有提供任何好处,或者您可能需要提供一个更大的数组样本集以及您正在寻找的结果示例。 – gmiley

+0

通读:http://stackoverflow.com/help/how-to-ask任何更新您的问题与更多细节。 – gmiley

+0

你说你看过另外一个问题,但它没有帮助你 - 它怎么没有帮助,即你尝试过什么没有用? –

回答

0

谢谢啦我用这个代码解决这个问题:

 $tpl_1= array(); 
     $tpl= array(); 
     foreach ($gigawinzs as $keys => $values) { 
      $tpl_1[$keys] = array(
       'id'=>$values['g']['id'], 
       'photoDetail' => $values['g']['photoDetail'], 
       'photoCadeau'=>$values['g']['photoCadeau'], 
       'count_giga_winz' => $values[0]['count_giga_winz'] 
      ); 
     } 
     $sumArray = array(); 

     foreach ($tpl_1 as $k=>$subArray) { 
      @$sumArray[$subArray['id']]+=$subArray['count_giga_winz']; 
      $tpl[$subArray['id']] = array(
       'id'=>$subArray['id'], 
       'photoDetail' => $subArray['photoDetail'], 
       'photoCadeau'=>$subArray['photoCadeau'], 
       'count_giga_winz' => $sumArray[$subArray['id']] 
      ); 
     }