【问题标题】:Merge same items and add their quantity合并相同的项目并添加它们的数量
【发布时间】:2015-10-02 05:15:44
【问题描述】:

我需要帮助。如何在 PHP 中编写代码?如果我使用表单方法输入项目#和数量

form method="post"<br />
input type="number" name="item1" | input type="number" name="quantity1"<br />
input type="number" name="item2" | input type="number" name="quantity2"<br />
input type="number" name="item3" | input type="number" name="quantity3"<br />

所以,如果我放置相同的项目#,那么数量将添加它们的值。提前致谢。


输入:(表单方法)
项目编号: 数量:
111 2
222 5
111 6
输出:
项目编号: 数量:
111 8
222 5

【问题讨论】:

  • 你可以使用update

标签: php menuitem inventory


【解决方案1】:
function group_items($string=""){
    if(!$string){return;}
    $grouped=array();
    preg_match_all('/([0-9\.]+(?: [0-9\.]+)?)/',$string,$matches);
    $string='';
    $matches = isset($matches[0])?$matches[0]:array();
    foreach($matches as $match){
        $exp = explode(' ',$match);
        if(!isset($grouped[$exp[0]])){
            $grouped[$exp[0]] = $exp[1];
        }else{
            $grouped[$exp[0]] += $exp[1];
        }
    }
    foreach($grouped as $key => $group){
        $string.=$key." ".$group." ";
    }
    return trim($string);
}   

通过以下方式调用它:

echo group_items("111 2 222 5 111 6");

输出:

 111 8 222 5

【讨论】:

    猜你喜欢
    • 1970-01-01
    • 2015-10-25
    • 1970-01-01
    • 2022-11-01
    • 2015-08-30
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    相关资源
    最近更新 更多