我有一個兩個數組,需要從它們中獲取一個數組。 array_merge
,array_map
等。不給正確的結果。兩個數組到一個分塊
$array1 = [1,2,3,4,5];
$array2 = [a,b,c,d,e];
我需要$array3 = [[1,a], [2,b], [3,c]]
...
什麼是得到這一結果的最佳方式?
我有一個兩個數組,需要從它們中獲取一個數組。 array_merge
,array_map
等。不給正確的結果。兩個數組到一個分塊
$array1 = [1,2,3,4,5];
$array2 = [a,b,c,d,e];
我需要$array3 = [[1,a], [2,b], [3,c]]
...
什麼是得到這一結果的最佳方式?
使用array_map(null, $arr1, $arr2)
你可以達到這個效果。
http://php.net/manual/en/function.array-map.php
php > $q = array_map(null, $array1, $array2);
php > print_r($q);
Array
(
[0] => Array
(
[0] => 1
[1] => a
)
[1] => Array
(
[0] => 2
[1] => b
)
[2] => Array
(
[0] => 3
[1] => c
)
[3] => Array
(
[0] => 4
[1] => d
)
[4] => Array
(
[0] => 5
[1] => e
)
)
謝謝!最好的解決方案 – MaoStream
for循環的方法是以下內容:
<?php
$array1 = [1,2,3,4,5];
$array2 = ['a','b','c','d','e'];
$array3 = array();
if(count($array1) == count($array2))
{
for($i = 0; $i < count($array1); $i++)
{
$array3[] = [$array1[$i],$array2[$i]];
}
}
else
{
die("SIZE MISMATCH");
}
echo '<pre>';
print_r($array3);
並且輸出是:
Array
(
[0] => Array
(
[0] => 1
[1] => a
)
[1] => Array
(
[0] => 2
[1] => b
)
[2] => Array
(
[0] => 3
[1] => c
)
[3] => Array
(
[0] => 4
[1] => d
)
[4] => Array
(
[0] => 5
[1] => e
)
)
是這兩個陣列的長度是相等的?如果是這樣使用'for'循環 –