数组转换合并

WBOY
發布: 2016-06-23 13:51:03
原創
890 人瀏覽過


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()合并,原来直接用+号就行了。。。。

相關標籤:
來源:php.cn
本網站聲明
本文內容由網友自願投稿,版權歸原作者所有。本站不承擔相應的法律責任。如發現涉嫌抄襲或侵權的內容,請聯絡admin@php.cn
熱門教學
更多>
最新下載
更多>
網站特效
網站源碼
網站素材
前端模板
關於我們 免責聲明 Sitemap
PHP中文網:公益線上PHP培訓,幫助PHP學習者快速成長!