⑴ php二維數組轉一維數組
PHP二維數組轉為一維數組的方法實例,分別使用foreach、for、while三種循環方法,還可以使用PHP自帶的array_column()函數;
具體示例:
二維數組
$msg=array(
array(
'id'=>'45',
'name'=>'jack'
),
array(
'id'=>'34',
'name'=>'mary'
),
array(
'id'=>'78',
'name'=>'lili'
),
);
第一種方法:
foreach($msgas$k=>$v){
$ids[]=$id;
$names[]=$name;
}
第二種方法:
<?php
$ids=array_column($msg,'id');
$names=array_column($msg,'name');
?>
注意:array_column();可以有第三個參數,如 $n = array_column($msg, 'name', 'id');
⑵ php一個二維數組怎樣轉為多個一個的數組
PHP 中的 array_merge_recursive() 函數可以實現
將一個或多個數組的元素的合並起來,一個數組中的值附加在前一個數組的後面。並返回作為結果的數組。
當有重復的鍵名時,值不會被覆蓋,而是將多個相同鍵名的值遞歸組成一個數組。
array_merge_recursive(array1,array2,array3...)
參數說明
array1 必需。輸入的第一個數組。
array2 必需。輸入的第二個數組。
array3 可選。可指定的多個輸入數組。
例如:
<?php
$a1=array("a"=>"Horse","b"=>"Dog");
$a2=array("c"=>"Cow","b"=>"Cat");
print_r(array_merge_recursive($a1,$a2));
?>
輸出:
Array (
[a] => Horse
[b] => Array ( [0] => Dog [1] => Cat )
[c] => Cow
)
註:array_merge() 函數也可以實現,與 array_merge_recursive()函數不同是,如果鍵名有重復,該鍵的鍵值為最後一個鍵名對應的值(後面的覆蓋前面的)。如果數組是數字索引的,則鍵名會以連續方式重新索引。