ホームページ  >  記事  >  バックエンド開発  >  php数组整合

php数组整合

WBOY
WBOYオリジナル
2016-06-06 20:25:181146ブラウズ

<code class="php"> $arr=[
     ['id'=>1,'name'=>'php','num'=>3],
     ['id'=>2,'name'=>'js','num'=>1],
     ['id'=>1,'name'=>'php','num'=>2],
     ['id'=>3,'name'=>'python','num'=>2],
 ];
//怎么对id相同的对num求和并去重,返回的结果为
 $arr=[
     ['id'=>1,'name'=>'php','num'=>5],
     ['id'=>2,'name'=>'js','num'=>1],
     ['id'=>3,'name'=>'python','num'=>2],
 ];</code>

回复内容:

<code class="php"> $arr=[
     ['id'=>1,'name'=>'php','num'=>3],
     ['id'=>2,'name'=>'js','num'=>1],
     ['id'=>1,'name'=>'php','num'=>2],
     ['id'=>3,'name'=>'python','num'=>2],
 ];
//怎么对id相同的对num求和并去重,返回的结果为
 $arr=[
     ['id'=>1,'name'=>'php','num'=>5],
     ['id'=>2,'name'=>'js','num'=>1],
     ['id'=>3,'name'=>'python','num'=>2],
 ];</code>

<code>$result = [];
foreach ($arr as $v) {
    if (isset($result[$v['id']])) {
        $result[$v['id']]['num'] += $v['num'];
    }
    else {
        $result[$v['id']] = $v;
    }
}
print_r($result);</code>
声明:
この記事の内容はネチズンが自主的に寄稿したものであり、著作権は原著者に帰属します。このサイトは、それに相当する法的責任を負いません。盗作または侵害の疑いのあるコンテンツを見つけた場合は、admin@php.cn までご連絡ください。