有人可以很高兴告诉我如何在PHP中使用2个以上的数组进行以下操作:
array 1 (a,b,c,d)
array 2 (1,2,3,4)
我想将两个数组合并在一个具有合并值的唯一数组中:
结果:唯一array (a-1,b-2,c-3,d-4)
。
有没有这样做的功能?我在论坛上找不到任何东西。
感谢您的所有答案,但我想我的数组更结构化,因为我需要下拉字段的最终结果。 现在我有这两个数组:
$array1[] = array( 'text' => $hospital['value'], 'value' => $hospital['value'] );
$array2[] = array( 'text' => $company['value'], 'value' => $company['value'] );
我希望有一个包含Hospital1 - Company1, Hospital2 - Company2, Hospital3 - Company3,
等的最终数组。
由于
答案 0 :(得分:3)
您可以使用array_map
:
$result = array_map(function ($item1, $item2) {
return "$item1-$item2";
}, $array1, $array2);
这是working demo。
答案 1 :(得分:0)
您必须手动创建循环才能执行此操作。它可能看起来像下面这样:
$a = array(a,b,c,d);
$b = array(1,2,3,4);
$c = array(); //result set
if(count($a) == count($b)){ // make sure they are the same length
for($i = 0; $i < count($a); $i++){
$c[] = $a[$i]."-".$b[$i];
}
}
print_r($c);
答案 2 :(得分:0)
如果我理解正确,你可以使用array_combine,其中数组1是键,数组2是值。
使用示例:
$a = array(1,2,3,4);
$b = array(a,b,c,d);
$c = array_combine($a, $b);
var_dump($c);