如果是array_key_exists,则array_push为多维数组

时间:2015-05-12 15:16:55

标签: php multidimensional-array array-key

我正在从现有数组($ newarray)创建一个新数组($ Parts),并重新排序该数组。但是,如果数组键存在于新数组中,我想要附加到'位置'和'数量'阵列。 这是新数组结构的样子:

     '4117-0171-249' => 
          'pri_id' => '859'
          'vendor' => 'R01298'
          'score' =>  '0.00'
          'location' => 
                 0 =>  '10103'
           'qty' => 
                 0 =>  '70' 

这是我正在使用的代码。

$Parts = array();
foreach($newarray AS $Ke => $Va) {
    if(array_key_exists($Va['part_number'], $Parts)){
         array_push($Parts[$location][],$Va['location']);
    } else {
    $Parts[$Va['part_number']] = array('pri_id' => $Va['pri_id'],
                                       'vendor' => $Va['vendor'],
                                       'score' => $Va['Score'],
                                          'location' => array($Va['location']),
                                          'qty' => array($Va['qty']),
                                        );
    }
 }

1 个答案:

答案 0 :(得分:2)

如果将来有人偶然发现这个问题,答案是这样的:

$Parts[$Va['part_number']]['location'][] = $Va['location'];