php组合多维数组
⑴ php两个相关的多维数组怎么合并成一个数组
如果是两个数组是相对应的,可以使用以下方法:
<?php
//数组1(gc_class):
$gc_class=array(
0=>array('gc_id'=>1,'gc_name'=>'分类1','gc_title'=>'111111'),
1=>array('gc_id'=>2,'gc_name'=>'分类2','gc_title'=>'2222')
);
//数组2(acticity):
$acticity=array(
'0'=>array('activity_id'=>1,'gc_class'=>1,'activity_name'=>'分类1下面的活动'),
'1'=>array('activity_id'=>2,'gc_class'=>2,'activity_name'=>'分类2下面的活动')
);
$arrs=array();
foreach($gc_classas$key=>$_gc_class){
$arrs[$key]=array_merge($_gc_class,$acticity[$key]);
}
print_r($arrs);
exit;
⑵ PHP 多维数组重组
用循环就好了呀
public function convert($originArr){
$newArr = array();
foreach($originArr as $arr) {
if (!empty($arr) && !empty($arr['id'])) {
$newArr[$arr['id']] = $arr;
}
}
return $newArr;
}
⑶ php如何将一维数组合并多维数组
array($a1, $a2);
⑷ PHP多维数组元素组合
functionmerge($a,$b){
if(is_array($a)&&is_array($b)){
$r=array();
foreach($aas$k=>$v){
foreach($bas$sk=>$sv){
array_push($r,$v.$sv);
}
}
if(0<count($r)){
return$r;
}else{
return!1;
}
}else{
return!1;
}
}
//test
print_r(merge(array('a','b','c'),array('d','e','f')));
⑸ php 合并多维数组中相同的值
$arr=array(
array(
array(
"stocknotifyId"=>1,
"sku"=>'13809_BL_37',
"email"=>'[email protected]'
),
array(
"stocknotifyId"=>3,
"sku"=>'13809_BL_37',
"email"=>'[email protected]'
),
array(
"stocknotifyId"=>5,
"sku"=>'13809_BL_37',
"email"=>'[email protected]'
)
),
array(
array(
"stocknotifyId"=>2,
"sku"=>'13809_B_39',
"email"=>'[email protected]'
)
),
array(
array(
"stocknotifyId"=>4,
"sku"=>'13809_BL_39',
"email"=>'[email protected]'
)
)
);
$re=array();
foreach($arras$a){
foreach($aas$v){
$tmp_v=$v;
unset($tmp_v['email']);
if(isset($re[$v['email']])){
$re[$v['email']][]=$tmp_v;
}else{
$re[$v['email']]=array($tmp_v);
}
}
}
print_r($re);
<!--output-->
Array
(
[[email protected]]=>Array
(
[0]=>Array
(
[stocknotifyId]=>1
[sku]=>13809_BL_37
)
[1]=>Array
(
[stocknotifyId]=>2
[sku]=>13809_B_39
)
)
[[email protected]]=>Array
(
[0]=>Array
(
[stocknotifyId]=>3
[sku]=>13809_BL_37
)
[1]=>Array
(
[stocknotifyId]=>4
[sku]=>13809_BL_39
)
)
[[email protected]]=>Array
(
[0]=>Array
(
[stocknotifyId]=>5
[sku]=>13809_BL_37
)
)
)
⑹ php多维数组
查询出来的数组就是
$a=array(array(1,"苹果",1,"5元"),array(1,"苹果",1,"5元"),array(1,"苹果",1,"5元"));
$b=array(array(1,"白菜",2,"3元"),array(1,"白菜",2,"3元"));
分别查询 $a 和 $b 后,用 $data = array('水果'=>$a,'蔬菜'=>$b) 就可以实现
⑺ php多维数组合并成一个数组,该如何处理
给数组加上变量,然后遍历一下
foreach ($Arr1 as $k => $r) {
$Arr4[] = array($Arr1[$k],$Arr2[$k],$Arr3[$k]);
}
echo '<pre>';
print_r($Arr4);
⑻ PHP多维数组的值进行合并
这个没有现成的函数可以用 只能写代码做了
$arrResult = array();
foreach ($arr as $oneItem) {
$arr[$oneItem['uid']] = array('uid' => $oneItem['uid'], 'name' => (array_key_exists('name', $arr[$oneItem['uid']]) && $arr[$oneItem['uid']]['name'] != '') ? $oneItem['uid']]['name'] . ',' . $oneItem['name'] : $oneItem['name']);
}
$arr = array();
foreach ($arrResult as $oneUid) {
$arr[] = $oneUid;
}
$arr是你原来的数组变量 最后得到$arr是结果
⑼ PHP 多维数组的重组 请看代码
楼上的回答其实都对,呵呵。 你的代码我看着感觉挺熟悉的,楼主是不是想生成个数组,然后直接转换成xml文档呢?键名冲突因此你的原计划肯定无法实现,最终数组应该类似
array(0 => array('key'=>...))这样就行了,在遍历的时候,尝试使用key($array)获取元素下标,如果这个下标是数字,那么直接使用item标记作为替换就好了,这个是我当初的解决方案。最终xml将类似
<tagname>
<item><key>...</key><title>...</title><NO>...</NO></item>
</tagname>
希望对你有帮助
⑽ php 多维数组的合并
array_merge_recursive -- 递归地合并两个或多个数组
array_merge -- 合并两个或多个数组