这个问题在这里已有答案:
我有两个数组
第一个阵列
array(
[0] => +970
[1] => +971
[2] => +972
)
和第二阵列
array(
[0] => 465465454
[1] => 321321355
[2] => 987946546
)
我想像这样合并它们
array(
[+970] => 465465454
[+971] => 321321355
[+972] => 987946546
)
我尝试使用array_merge
,但这给了我一些我不想要的结果,例如
$busi_code = $page1_data->business_code; //array
$busi_num = $page1_data->business_number; //array
$business_phone_numbers = array_merge($busi_code, $busi_num);
echo '<pre>';
print_r($business_phone_numbers);
echo '</pre>';
结果是
[0] => +970
[1] => +971
[2] => +972
[3] => 465465454
[4] => 321321355
[5] => 987946546
所以请指导我如何达到我要求的结果。
你正在寻找array_combine
,而不是array_merge
:
使用keys数组中的值作为键创建数组,将values数组中的值作为相应的值。
$business_phone_numbers = array_combine($busi_code, $busi_num);
这是array_combine
功能的工作:
$business_phone_numbers = array_combine($busi_code, $busi_num);
您必须使用array_combine。
试试这个:
$a = array(
0 => +970,
1 => +971,
2 => +972);
$b = array(
0 => 465465454,
1 => 321321355,
2 => 987946546);
$r = array_combine($a,$b);
print_r($r);