讓我們假設我有兩個數組,我想將每個值與數組的另一個值合併。兩個數組的連接值
陣列1
array (size=2) 0 => 1 1 => 2
陣列2
array (size=2) 0 => 3 1 => 4
求購結果陣列/串:
array (size=4) 0 => '1,3' 1 => '1,4' 2 => '2,3' 3 => '2,4'
我不能讓我的頭周圍。很明顯,我需要將每個數組鍵/值與其他數組合並。有沒有更優雅的方式,然後在while/foreach循環中執行此操作?
讓我們假設我有兩個數組,我想將每個值與數組的另一個值合併。兩個數組的連接值
陣列1
array (size=2) 0 => 1 1 => 2
陣列2
array (size=2) 0 => 3 1 => 4
求購結果陣列/串:
array (size=4) 0 => '1,3' 1 => '1,4' 2 => '2,3' 3 => '2,4'
我不能讓我的頭周圍。很明顯,我需要將每個數組鍵/值與其他數組合並。有沒有更優雅的方式,然後在while/foreach循環中執行此操作?
您需要一個foreach
循環在foreach
循環內。 (Actualy,你將不得不循環兩個數組以獲得兩個數組的連接產物,但實際上並不需要兩個循環)。你可以混合:whiles
,foreach
,for
,或php濾波器/相交數組函數
$array1 = array(1,2);
$array2 = array(3,4);
$result = array();
foreach ($array1 as $item1){
foreach($array2 as $item2){
$result[] = $item1.','.$item2;
}
}
你的結果陣列的長度將是array1.Length * array2.Length
你也可以把一個數組insi德數組是這樣的:
$array1 = array(1,2);
$array2 = array(3,4);
$result = array();
foreach ($array1 as $item1){
foreach($array2 as $item2){
$result[] = array($item1, $item2);
}
}
//$result[0][0] = 1 -- $result[0][1] = 3
//$result[1][0] = 1 -- $result[1][1] = 4
//$result[2][0] = 2 -- $result[2][1] = 3
//$result[3][0] = 2 -- $result[3][1] = 4
我們稱之爲2D(二維)陣列,因爲你可以grapicly顯示這是一個網格,喜歡這裏的上方。如果你想放置一個數組,在一個數組內的數組中,你可以稱這是一個三維數組等。在PHP中:
Array
(
[0] => Array
(
[0] => 1
[1] => 3
)
[1] => Array
(
[0] => 1
[1] => 4
)
[2] => Array
(
[0] => 2
[1] => 3
)
[3] => Array
(
[0] => 2
[1] => 4
)
)
檢查你的輸出?語法錯誤$ item1。','$ item2; – 2014-10-31 13:06:11
修正了它,沒有我沒有,我寫了純文本。 – 2014-10-31 13:08:50
嘗試
$a= array ('0' => 1,'1' => 2);
$b= array ('0' => 3,'1' => 4);
for($i=0; $i<count($a); $i++) {
for($j=0; $j<count($b); $j++) {
$newarr[]= $a[$i].','.$b[$j];
}
}
print_r($newarr);//Array ([0] => 1,3 [1] => 1,4 [2] => 2,3 [3] => 2,4)
$a=array('1','2');
$b=array('3','4');
$res=array();
for($i=0;$i<count($a);$i++)
{
foreach($b as $bb)
{
$res[]=strval($a[$i].','.$bb);
}
}
print_r($res);//output=Array ([0] => 1,3 [1] => 1,4 [2] => 2,3 [3] => 2,4)
@Rakesh Sharma $ bb是變量,持有$ b的值檢查這個http://php.net/manual/en/control-structures.foreach.php – 2014-10-31 13:06:17
所以你試過? – 2014-10-31 12:56:35
我使用兩個數組的標題concantenate值。會更合適。 – Rimble 2014-10-31 13:02:52
連結*,道歉。 @ s1x – Rimble 2014-10-31 13:05:00