㈠ php 二維數組根據條件合並
functionmergById($arr1,$arr2,$id){
$tmp=array();
foreach($arr2as$record){
$tmp[$record[$id]][]=$record;
}
$arr3=array();
foreach($arr1as$record){
$arr3[]=$record;
if(isset($tmp[$record[$id]])){
foreach($tmp[$record[$id]]as$sameIdRecord){
$arr3[]=$sameIdRecord;
}
}
}
return$arr3;
}
㈡ PHP遞歸二維數組怎樣一步到位拼接
foreach 遍歷圈套循環也是可以 但是在數據上要做區分 主要做出符合自己邏輯的比較便利
㈢ php二維數組拼接問題
$arr1=array(
array("date"=>"2016-08-01","Name"=>"Mike","Age"=>18),
array("date"=>"2016-08-02","Name"=>"Bob","Age"=>21),
array("date"=>"2016-08-03","Name"=>"Cindy","Age"=>19)
);
$arr2=array(
array("date"=>"2016-08-01","Address"=>"Zhejiang"),
array("date"=>"2016-08-03","Address"=>"Shanghai")
);
$arr3=array(
array("date"=>"2016-08-01","Sex"=>"Male"),
array("date"=>"2016-08-02","Sex"=>"Female"),
array("date"=>"2016-08-03","Sex"=>"Female")
);
functionmerge($arr1,$arr2=[]){
foreach($arr1as$k=>$v){
if(!isset($arr2[$v['date']])){
$arr2[$v['date']]=array(
'date'=>$v['date'],
'Name'=>'',
'Address'=>'',
'Sex'=>'',
);
}
if(isset($v['Name'])){
$arr2[$v['date']]['Name']=$v['Name'];
}
if(isset($v['Address'])){
$arr2[$v['date']]['Address']=$v['Address'];
}
if(isset($v['Sex'])){
$arr2[$v['date']]['Sex']=$v['Sex'];
}
}
return$arr2;
}
$arr=merge($arr1);
$arr=merge($arr2,$arr);
$arr=merge($arr3,$arr);
print_r($arr);//合並後的key值和你的需求不太一致
㈣ php 2個二維數組合成一個2維數組,條件是lid=id的合並
按照你的要求合並兩個二維數組的PHP程序如下
<?php
$arr1 =array(array('lid' => 67, 'title' => 'T恤'), array('lid' => 27, 'title' => '襯衣'));
$arr2 =array(array('id' => 67, 'url' => '.com'), array('id' => 27, 'url' => 'jd.com'));
$result=array();
for($i=0;$i<count($arr1);$i++){
$result[$i]=$arr1[$i];
for($j=0;$j<count($arr2);$j++){
if ($arr1[$i]['lid']==$arr2[$j]['id']){
$result[$i]['url'] = $arr2[$j]['url'];
}
}
}
print_r($result);
?>
㈤ php二維數組合並
代碼:
<?php
$arr=array(
array('cat_id'=>10,'num'=>3),
array('cat_id'=>20,'num'=>4),
array('cat_id'=>30,'num'=>5),
array('cat_id'=>40,'num'=>3),
array('cat_id'=>50,'num'=>5)
);
$new_arr=array();
foreach($arras$value){
if($value['num']===3){
$new_arr[]=$value;
}
}
var_mp($new_arr);
?>
截圖:
㈥ PHP二維數組合並
用 foreach();
例如:
$arr1=Array ( [房產] => Array ( [field11] => 中介 [field12] => 個人 [field13] => 商業 ) )
$arr2=Array ( [地產] => Array ( [field21] => 地產中間 [field22] => 開發商 [field23] => 業主 ) )
foreach($arr2 as $k=>$v){
$arr1[$k]=$v;
}
print_r($arr1);
㈦ php 怎樣把一個二維數組合並一個數組
array_merge
array_merge — 合並一個或多個數組
array array_merge ( array $array1 [, array $... ] )
array_merge() 將一個或多個數組的單元合並起來,一個數組中的值附加在前一個數組的後面。返回作為結果的數組。
如果輸入的數組中有相同的字元串鍵名,則該鍵名後面的值將覆蓋前一個值。然而,如果數組包含數字鍵名,後面的值將不會覆蓋原來的值,而是附加到後面。
如果只給了一個數組並且該數組是數字索引的,則鍵名會以連續方式重新索引。
㈧ php:根據條件合並二維數組
mergById($arr1, $arr2, $id){ $tmp = array(); foreach($arr2 as $record){ $tmp[$record[$id]][] = $record; } $arr3 = array(); foreach($arr1 as $record){ $arr3[] = $record; if(isset($tmp[$record[$id]])){ foreach($tmp[$record[$id]] as $sameIdRecord){ $arr3[] = $sameIdRecord; } } } return $arr3;}
㈨ 如何取出二維數組中的不重復元素並進行拼接php
$data1_arr=array(
0=>array('部門ID'=>3,名字=>張三),
1=>array('部門ID'=>3,名字=>李四),
2=>array('部門ID'=>2,名字=>王五),
3=>array('部門ID'=>1,名字=>黃兒)
);
$ret_arr=array();
foreach($data1_arras$key=>$val_arr){
if(!isHas($val_arr)){
continue;
}
$ret_arr[]=$val_arr;
}
print_r($ret_arr);
functionisHas($arr){
global$ret_arr;
foreach($ret_arras$val_arr){
if($val_arr['部門id']==$arr['部門ID']){
returnfalse;
}
}
returntrue;
}