更新php多维数组

时间:2014-08-28 09:03:46

标签: php arrays multidimensional-array

如果产品ID和大小都在相同的数组元素中匹配,我想基于pid和size s更新数组,然后通过添加数量来更新数量并将它们合并到一个索引中。应该理解任何帮助。<登记/> 我的代码是:_

<?php

 $details = array ( "0"  => array ( "pid" => "402",
                                       "q" => "1",
                                       "s" => "0"
                                     ),
                   "1"  => array ( "pid" => "403",
                                       "q" => "2",
                                       "s" => "0"
                                     ),
                   "2"  => array ( "pid" => "402",
                                       "q" => "3",
                                       "s" => "0"
                                     ),
                   "3"  => array ( "pid" => "403",
                                       "q" => "1",
                                       "s" => "0"
                                     ),
                   "4"  => array ( "pid" => "405",
                                       "q" => "1",
                                       "s" => "0"
                                     ),
                );

?>

输出应该看起来像

输出:

 0-pid 402 q 4 s 0
 1-pid 403 q 3 s 0
 4-pid 405 q 1 s 0

1 个答案:

答案 0 :(得分:2)

foreach($details as $p)
{
  $output[$p["pid"]][$p["s"]]["q"]+=$p["q"];
}

<强>输出

Array
(
    [402] => Array
        (
            [0] => Array
                (
                    [q] => 4
                )

        )

    [403] => Array
        (
            [0] => Array
                (
                    [q] => 3
                )

        )

    [405] => Array
        (
            [0] => Array
                (
                    [q] => 1
                )

        )

)

然后,您可以以任何您喜欢的格式显示数组