Home > Backend Development > PHP Tutorial > 两个数组怎么合并到一起

两个数组怎么合并到一起

WBOY
Release: 2016-06-13 11:53:45
Original
3739 people have browsed it

两个数组如何合并到一起
例如:
     array(0=> Array ( [id] => 1 [catid] => 6))
     array(0=> Array ( [title] =>标题 [content] => 内容))

有什么办法,使最后能出现这样的结果
   array(0=> Array ( [id] => 1 [catid] => 60 [title] =>标题 [content] => 内容))
------解决方案--------------------
用array_merge函数
------解决方案--------------------
用array_merge函数
http://www.w3school.com.cn/php/func_array_merge.asp

定义和用法
array_merge() 函数把两个或多个数组合并为一个数组。
如果键名有重复,该键的键值为最后一个键名对应的值(后面的覆盖前面的)。如果数组是数字索引的,则键名会以连续方式重新索引。
注释:如果仅仅向 array_merge() 函数输入了一个数组,且键名是整数,则该函数将返回带有整数键名的新数组,其键名以 0 开始进行重新索引。(参见例子 2)
------解决方案--------------------

$a = array( array ( 'id' => 1, 'catid' => 6));<br />$b = array( array ( 'title' => '标题', 'content' => '内容'));<br /><br />print_r(array( $a[0]+$b[0]) );<br />print_r(array( array_merge($a[0], $b[0]) ));<br />print_r(array_map('array_merge', $a, $b));
Copy after login
Copy after login
都可以得到
Array
(
[0] => Array
(
[id] => 1
[catid] => 6
[title] => 标题
[content] => 内容
)

)

------解决方案--------------------
<br />    $arr=array(0=> Array ( 'id' => 1, 'catid' => 6));<br />    $brr=array(0=> Array ( 'title' =>'标题' ,'content' => '内容'));<br />    print_r(array_map('array_merge',$arr,$brr));<br />
Copy after login

------解决方案--------------------
对于你 #3 的样例,显然可以将他们按下标组合成两个二维数组
array_map('array_merge', $a, $b)
------解决方案--------------------
引用:
$a = array( array ( 'id' => 1, 'catid' => 6));<br />$b = array( array ( 'title' => '标题', 'content' => '内容'));<br /><br />print_r(array( $a[0]+$b[0]) );<br />print_r(array( array_merge($a[0], $b[0]) ));<br />print_r(array_map('array_merge', $a, $b));
Copy after login
Copy after login
都可以得到
Array
(
    [0] => Array
        (
            [id] => 1
            [catid] => 6
            [title] => 标题
            [content] => 内容
        )

)


正解哦。。。。
------解决方案--------------------

引用:
array_merge 后面会覆盖前面的。+的话前面覆盖后面的。不知道大家还有什么办法


array(0=> Array ( [id] => 1 [catid] => 6))
array(0=> Array ( [title] =>标题 [content] => 内容))
array(1=> Array ( [id] => 2 [catid] => 6))
array(1=> Array ( [title] =>标题2 [content] => 内容2))
array(2=> Array ( [id] =>3 [catid] => 6))
array(2=> Array ( [title] =>标题3[content] => 内容3))
这是个动态的,最后要出现
 array(0=> Array ( [id] => 1 [catid] => 60 [title] =>标题 [content] => 内容))
 array(1=> Array ( [id] => 2 [catid] => 60 [title] =>标题2 [content] => 内容2))
 array(2=> Array ( [id] => 3 [catid] => 60 [title] =>标题3 [content] => 内容3))


你键名不同怎么会覆盖?请给出你会覆盖的测试数据和结果。
Related labels:
source:php.cn
Statement of this Website
The content of this article is voluntarily contributed by netizens, and the copyright belongs to the original author. This site does not assume corresponding legal responsibility. If you find any content suspected of plagiarism or infringement, please contact admin@php.cn
Popular Tutorials
More>
Latest Downloads
More>
Web Effects
Website Source Code
Website Materials
Front End Template