php 连个数组求和,两个数组如何按照其中一个相同的相加形成新数组

$t1=Array ( [0] => 1320 [1] => 990 [2] => 895 [3] => 790 [4] => 775 [5] => 745 [6] => 740 [7] => 680 [8] => 665 [9] => 535 )

$t2=Array ( [0] => 南昌 [1] => 赣州 [2] => 吉安 [3] => 九江 [4] => 南昌 [5] => 九江 [6] => 萍乡 [7] => 省外 [8] => 南昌 [9] => 九江 )

可以做一个$t11= 这个是记录值的,

$t22=这个是记录地区的。

这样子可以确保不会出现重名的情况而覆盖掉数据,但是不知道这样子能不能计算相加相同的。

$t11= Array ( [0] => 2760 [1] => 990 [2] => 895 [3] => 2070 [4] => 740 [5] => 680 )

$t22= Array ( [0] => 南昌 [1] => 赣州 [2] => 吉安 [3] => 九江 [4] => 萍乡 [5] => 省外 )

计算后的结果如上面。。就是把t2相同的去掉,同时t1里面把对于键名的相加。

回复讨论(解决方案)

先创建一个数组是 $t2数组去重后的结果(t22)

循环这个新数组(t22),对于每一个地名,去循环$t2数组. 如果这两者值(地名相同),将此时$t2对应的key 拿去$t1取值,将其加到一个新新数组($t11)的第(新数组当前循环项),并继续循环直到t22当前循环下每一个$t2的子元素都对比完毕.

继续把$t22循环完

先创建一个数组是 $t2数组去重后的结果(t22)

循环这个新数组(t22),对于每一个地名,去循环$t2数组. 如果这两者值(地名相同),将此时$t2对应的key 拿去$t1取值,将其加到一个新新数组($t11)的第(新数组当前循环项),并继续循环直到t22当前循环下每一个$t2的子元素都对比完毕.

继续把$t22循环完

请高人写代码。

$t1=Array ( 0 => 1320 ,1 => 990 ,2 => 895 ,3 => 790 ,4 => 775 ,5 => 745 ,6 => 740 ,7 => 680 ,8 => 665 ,9 => 535 );$t2=Array ( 0 => '南昌' ,1 => '赣州' ,2 => '吉安' ,3 => '九江' ,4 => '南昌' ,5 => '九江' ,6 => '萍乡' ,7 => '省外' ,8 => '南昌' ,9 => '九江' ); $t22 = array_unique($t2);$t11 = array();foreach ($t22 as $key1=>$c){foreach($t2 as $key2=>$c2){if($c == $c2){$t11[$key1] += $t1[$key2];}}}print_r($t11);print_r($t22);

Array ( [0] => 2760 [1] => 990 [2] => 895 [3] => 2070 [6] => 740 [7] => 680 )

Array ( [0] => 南昌 [1] => 赣州 [2] => 吉安 [3] => 九江 [6] => 萍乡 [7] => 省外 )

应该直接写代码 比打字说流程要快....

$t1=Array ( 0 => 1320 ,1 => 990 ,2 => 895 ,3 => 790 ,4 => 775 ,5 => 745 ,6 => 740 ,7 => 680 ,8 => 665 ,9 => 535 );$t2=Array ( 0 => '南昌' ,1 => '赣州' ,2 => '吉安' ,3 => '九江' ,4 => '南昌' ,5 => '九江' ,6 => '萍乡' ,7 => '省外' ,8 => '南昌' ,9 => '九江' ); $t22 = array_unique($t2);$t11 = array();foreach ($t22 as $key1=>$c){foreach($t2 as $key2=>$c2){if($c == $c2){$t11[$key1] += $t1[$key2];}}}print_r($t11);print_r($t22);

Array ( [0] => 2760 [1] => 990 [2] => 895 [3] => 2070 [6] => 740 [7] => 680 )

Array ( [0] => 南昌 [1] => 赣州 [2] => 吉安 [3] => 九江 [6] => 萍乡 [7] => 省外 )

应该直接写代码 比打字说流程要快....

感谢了。

本文原创发布php中文网,转载请注明出处,感谢您的尊重!

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值