我有两个数组:PHP:Concatinating×2个阵列值
array(1,2,3,4,5)
array(10,9,8,7,6)
最终阵列所需:
array(0=>1:10,1=>2:9,2=>3:8,3=>4:7,4=>5:6)
我可以写这将是quieck足够的自定义功能!但我想使用现有的所以是否有任何功能,这在PHP中做到这一点?传递两个输入数组并获得最终的数组结果?我通过阅读array functions但找不到任何功能或组合将提供给我的结果
我有两个数组:PHP:Concatinating×2个阵列值
array(1,2,3,4,5)
array(10,9,8,7,6)
最终阵列所需:
array(0=>1:10,1=>2:9,2=>3:8,3=>4:7,4=>5:6)
我可以写这将是quieck足够的自定义功能!但我想使用现有的所以是否有任何功能,这在PHP中做到这一点?传递两个输入数组并获得最终的数组结果?我通过阅读array functions但找不到任何功能或组合将提供给我的结果
,尤其是:http://nl3.php.net/manual/en/function.array-combine.php
另外,我不太明白最终的数组结果? 你的意思是这样的:
array (1 = 10, 2 = 9, 3 = 8, 4 = 7, 5 = 6)
因为在这种情况下,你必须写它通过两个阵列循环的自定义功能,从阵列1项[X]从阵列2相结合的项目[X]。
<?php
$arr1=array(1,2,3,4,5);
$arr2=array(10,9,8,7,6);
for($i=0;$i<count($arr1);$i++){
$newarr[]=$arr1[$i].":".$arr2[$i];
}
print_r($newarr);
?>
使用array_combine
array_combine($array1, $array2)
试试这个:
$arr1 = array(1,2,3,4,5);
$arr2 = array(10,9,8,7,6);
$res = array_map(null,$arr1,$arr2);
$result = array_map('implode', array_fill(0, count($res), ':'), $res);
echo "<pre>";
print_r($result);
输出:
Array
(
[0] => 1:10
[1] => 2:9
[2] => 3:8
[3] => 4:7
[4] => 5:6
)
+1但你不需要'array_fill' ... implode会做得很好 – Baba
结果应该是'1:10'或'1,10'? –
请参阅我编辑的最终数组。感谢所有我们的宝贵回复:) – VishwaKumar