在PHP中合并两个数组

在PHP中合并两个数组,php,Php,我有两个阵列: $a = array([0]=>1 [1]=>2 [2]=>3); $b = array([0]=>a [1]=>b [2]=>c); 我想像这样把它们合并起来 $ab=array( [a]=>array([0]=>1 [1]=>2 [2]=>3) [b]=>array([0]=>a [1]=>b [2]=>c) ); 如何做到这一点 我尝试了array\u merg

我有两个阵列:

$a = array([0]=>1 [1]=>2 [2]=>3);
$b = array([0]=>a [1]=>b [2]=>c);
我想像这样把它们合并起来

$ab=array( [a]=>array([0]=>1 [1]=>2 [2]=>3) 
           [b]=>array([0]=>a [1]=>b [2]=>c)  );
如何做到这一点


我尝试了
array\u merge()
,但它没有按我所希望的那样工作。

在这种情况下,您只需执行以下操作:

$ab = array('a' => $a, 'b' => $b);
$ab = array('a' => $a, 'b' => $b);

你差不多已经写了答案了

将导致:

$ab['a'] = array([0] => 1, [1] => 2, [2] => 3);
$ab['b'] = array([0] => a, [1] => b, [2] => c);
或者,如果您不需要密钥,您可以只执行
$ab=array($a,$b)
(您的问题中不清楚a和b是字符串还是整数)。

您可以使用
compact()
方法:

$ab = compact('a', 'b');

其中
'a'
'b'
将用作数组键并作为变量名来分配值,因此它将执行
数组('a'=>$a,'b'=>$b)

看起来您不想合并它们。只要做
$ab=array('a'=>$a,…)
。。。直截了当?
$ab = compact('a', 'b');