首页 >后端开发 >php教程 >数组转换合并

数组转换合并

WBOY
WBOY原创
2016-06-23 13:51:03951浏览


Array ( [0] => Array ( [id] => 9 [ti] => 我 ) [1] => Array( [id] => 10 [ti] => 们 )  [2] => Array( [id] => 11 [ti] => 中 )[3] => Array( [id] => 11 [ti] => 国 ))
这个转换成一维数组ID做为KEY,转换我会,但遇到相同的就合并怎么做?
如果得到一个一维数组,把得到的一维数组与下面的合并,如果KEY相等就替换值;
Array ( [7] => 爱[8] => 我 [9] => 11 [10] => 33333 [11] => 中 [12] => 华 )

目前练习数组遇到的两个问题,请高手指导。搞了快一天,还是失败了。。。-_-


回复讨论(解决方案)

$a = Array (  Array( 'id' => 9,  'ti' => '我' ),  Array( 'id' => 10, 'ti' => '们' ),  Array( 'id' => 11, 'ti' => '中' ),  Array( 'id' => 11, 'ti' => '国' ));$res = array();foreach($a as $r) {  if(isset($res[$r['id']])) $res[$r['id']] .= $r['ti'];  else $res[$r['id']] = $r['ti'];}print_r($res);
Array(    [9] => 我    [10] => 们    [11] => 中国)

$a = Array (  Array( 'id' => 9,  'ti' => '我' ),  Array( 'id' => 10, 'ti' => '们' ),  Array( 'id' => 11, 'ti' => '中' ),  Array( 'id' => 11, 'ti' => '国' ));$res = array();foreach($a as $r) {  if(isset($res[$r['id']])) $res[$r['id']] .= $r['ti'];  else $res[$r['id']] = $r['ti'];}print_r($res);
Array(    [9] => 我    [10] => 们    [11] => 中国)


版主不好意思我还想请教$res[$r['id']] .= $r['ti'];中间.符号用来起什么作用的?如果把$res和下面的数组合并,遇到相同KEY替换他的值。能不能做到?
Array ( [7] => 爱[8] => 我 [9] => 11 [10] => 33333 [11] => 中 [12] => 华 )

哈哈,一直用array_merge()合并,原来直接用+号就行了。。。。

声明:
本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系admin@php.cn