① php從數組中隨機取幾個元素組成新的數組
1、
$a = array(1,2,3,4,5,6,7,8,9,10);
$b = array_rand($a,5);
foreach($b as $k=>$v){
$arr[]=$a[$v];
}
print_r($arr);
2、
$arr=$a;
shuffle($arr);
$arr=array_slice($arr,0,5);
print_r($arr);
② php 一個結果集中有多個數組,怎樣將它放入一個新的數組中
合並數組可以使用array_merge() 這個老納函數,
array_merge() 函數把兩個或多個數組合並為一個數組。
如果鍵名有重復,該鍵的鍵值為最後一個鍵名對應的侍叢沒值(後面的覆蓋前面的)。如果數組是數字索引的,鄭信則鍵名會以連續方式重新索引。
③ php怎麼將兩個數組合成一個數組
PHP 中的 array_merge()、array_merge_recursive()函數可以實現
array_merge() 函數把兩個或多個數組合並為一個數組。
如果鍵名有重復,該鍵的鍵值為最後一個鍵名對應的值(後面的覆蓋前面的)。如果數組是數字索引的,則鍵名會以連續方式重新索引。
注意:如果僅僅向 array_merge() 函數輸入了一個數組,且鍵名是整數,則該函數將返回帶有整數鍵名的新數組,其鍵名以 0 開始進行重新索引。
array_merge(array1,array2,array3...)
參數說明
array1 必需。輸入的第一個數組。
array2 必需。輸入的第二個數組。
array3 可選。可指定的多個輸入數組。
例如:
<?php
$a1=array("a"=>"Horse","b"=>"Dog");
$a2=array("c"=>"Cow","b"=>"Cat");
print_r(array_merge($a1,$a2));
?>
輸出:
Array ( [a] => Horse [b] => Cat [c] => Cow )
僅使用一個數組參數:
<?php
$a=array(3=>"Horse",4=>"Dog");
print_r(array_merge($a));
?>
輸出:
Array ( [0] => Horse [1] => Dog )
array_merge_recursive() 函數與array_merge()函數不同的是,當有重復的鍵名時,值不會被覆蓋,而是將多個相同鍵名的值遞歸組成一個數組。
例如:
<?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
)
④ PHP 遞歸處理數組,並組合成新的數組
/**
*多維數組遞歸合並
*/
functionmultimerge(){
$arrs=func_get_args();
$merged=array();
while($arrs){
$array=array_shift($arrs);
if(!$array){
continue;
}
foreach($arrayas$key=>$value){
if(is_string($key)){
if(is_array($value)&&array_key_exists($key,$merged)&&is_array($merged[$key])){
$merged[$key]=call_user_func(__FUNCTION__,$merged[$key],$value);
}else{
$merged[$key]=$value;
}
}else{
$merged[]=$value;
}
}
}
return$merged;
}
$a1=array('user'=>array('name'=>'tony','score'=>23));
$a2=array('user'=>array('name'=>'tony','score'=>255),'name'=>'tom');
$a3=array('user'=>array('name'=>'tony','score'=>288,'test'=>'abc'),'name'=>'jack');
$result=multimerge($a1,$a2,$a3);
var_mp($result);
⑤ php數組合並兩個數組(一個數組做鍵名,另一個做值) **key名字可以重復
php將兩個鍵名和鍵值的數組元素合並為一個數組
你好,有兩個方法可以實現:
一:
$arry_a=array(0,1,2);
$arry_b=array('dongsir','董先生','董先生的CSDN博客');
$arry_ab=[];
foreach($arry_bas$key=>$value){
$arry_ab[$arry_a[$key]]=$value;
}
echo"<pre>";
print_r($arry_ab);
輸出
Array
(
[0]=>dongsir
[1]=>董先生
[2]=>董先生的CSDN博客
)
第二個方法:
php將兩個鍵名和鍵值的數組元素合並為一個數組
Array
(
[a]=>dongsir,董先生
[c]=>董先生的CSDN博客
)
⑥ php 已知兩個數組,根據第一個數組值篩選第二個數組值,組成新的一維數組
詳情代碼如圖:思路由於兩個數組的長度是一樣的,直接進行簡單的循環判斷即可,在循環過程中,判斷值arr1中的循環的值是否為零,如果為零的話,就取對應下標的arr2中的值,添加進數組 arr3
⑦ php從數組中隨機取幾個元素組成新的數組
$a = array(1,2,3,4,5,6,7,8,9,10);
$b = array_rand($a,5);
print_r($b);