1. php三维数组变二维数组
foreach(三维 value){
新二维=value;
}
2. PHP高手请进。把一个三维数组里的所有二维数组取出来比较,取交集...
//foreach三维,一步步算下去就行
$arr = array(
array('a'=>'1','b'=>'2','c'=>'5','d'=>'56'),
array('a'=>'1','c'=>'5','d'=>'56'),
array('a'=>'1','c'=>'5','e'=>'44'),
array('a'=>'1','c'=>'5','d'=>'56','f'=>'d')
);
if (count($arr)>0)
{
foreach($arr as $key=>$val)
{
if ($key==0)//第一个先取出来
{
$tmp_arr = $val;
}
else
{
$tmp_arr = array_intersect_assoc($tmp_arr,$val);
}
}
}
print_r($tmp_arr);
3. PHP 多维固定数组转换成二维数组
functiondofor_child($array,$list,$k){
if(is_array($array)){
$k++;
foreach($array空弯腊as$key=>$ar){
if(!is_array($ar)){
$list[$k][$key]=$ar;闹升斗滑
}else{
returndofor_child($ar,$list,$k);
}
}
}
return$list;
}
$arr=dofor_child($array1,$list,-1);
var_mp($arr);
exit;
4. php 三维数组转二维
$newArr=array();
foreach($arras大春蔽滚州$key=>$val){
foreach($valas$k=>$v){
$newArr[]=$v;
森歼}
}
var_mp($newArr);
5. PHP三维数组
首先需要更正一下。php二维数组的写法。
$erwei=array(
array('a','b','c','d'),
array('aa','bb','cc','dd')
);
//$erwei[0][1]的值为b
php中的数组中[]的数字表示索引,从0开始计数。如1表示第二个元素。数组是一层层嵌套的。
这样你应该明白三维数组的写法以及取值了吧。
例子:
$sanwei=array(
array(
array('aa','bb','cc','dd'),
array('aa1','bb1','cc1','dd1')
),
);
//$sanwei[0][0][1] 的值为 bb
补充:
单纯的讨论这个没有多大意义。同时php里面没有明确的定义。几维数组只是一种形式。关键在你实战中的需求。
7的是$shuzu[0][0][2][0]
a的是$shuzu[0][1][0]
这些东西,你直接写在php文件里面运行一下就出来了。实践最重要。不要光看教程。
6. 把三维数组放到二维数组,PHP怎么做
如果单纯地把一个三维数组作为一个元素放进去,那很简迅渗单
$arr1 二维数组
$arr2 三维数组
$arr1[] = $arr2 这就把这个三维数组作为一个数组元素亩歼脊放进去了。
但我估计你要的结果不是这样,你应该是如何把三维数组转成二维数组,改仔再将其与$arr1进行合并。
用foreach就可以了
7. php 二维数组转三维数组
foreach($arr as $k =>陵早 $v){
if($v['fid'] == 0) $new_arr[$v['晌卜id']] = $v;
else{
$new_arr[$v['fid']]['child']['尺谨雀$v['id']'] = $v;
}
}
8. 急!!!把三维数组放到二维数组,PHP怎么做
Array( [0] => Array ( [ProctAttributeClassSetid] => 0 [ProctClassid] => 2 [ProctAttributeid] => 1 [Attribute] => 婚纱颜色 ) [1] => Array ( [ProctAttributeClassSetid] => 1 [ProctClassid] => 2 [ProctAttributeid] => 3 [Attribute] => 拍摄风格 ) [2] => Array ( [ProctAttributeClassSetid] => 2 [ProctClassid] => 2 [ProctAttributeid] => 4 [Attribute] => 底片赠送 ) [3] => Array ( [ProctAttributeClassSetid] => 3 [ProctClassid] => 2 [ProctAttributeid] => 2 [Attribute] => 婚纱尺寸 ))这是二维数组下面是三维数组,把三维数组放进二维数组中,一 一对一!Array( [0] => Array ( [0] => Array ( [ProctAttributeValuesid] => 1 [ProctAttributeid] => 1 [AttributeValues] => 白色 [IsValid] => 0 ) [1] => Array ( [ProctAttributeValuesid] => 2 [ProctAttributeid] => 1 [AttributeValues] => 红色 [IsValid] => 0 ) [2] => Array ( [ProctAttributeValuesid] => 5 [ProctAttributeid] => 1 [AttributeValues] => 粉色 [IsValid] => 0 ) ) [1] => Array ( [0] => Array ( [ProctAttributeValuesid] => 7 [ProctAttributeid] => 3 [AttributeValues] => 山水 [IsValid] => 0 ) [1] => Array ( [ProctAttributeValuesid] => 8 [ProctAttributeid] => 3 [AttributeValues] => 梦幻 [IsValid] => 0 ) ) [2] => Array ( [0] =>老衫 Array ( [ProctAttributeValuesid] => 9 [ProctAttributeid] => 4 [AttributeValues] =>耐巧 是侍亩腔 [IsValid] => 0 ) [1] => Array ( [ProctAttributeValuesid] => 10 [ProctAttributeid] => 4 [AttributeValues] => 否 [IsValid] => 0 ) ) [3] => Array ( [0] => Array ( [ProctAttributeValuesid] => 3 [ProctAttributeid] => 2 [AttributeValues] => 大尺寸 [IsValid] => 0 ) [1] => Array ( [ProctAttributeValuesid] => 4 [ProctAttributeid] => 2 [AttributeValues] => 小尺寸 [IsValid] => 0 ) [2] => Array ( [ProctAttributeValuesid] => 6 [ProctAttributeid] => 2 [AttributeValues] => 中尺寸 [IsValid] => 0 ) ))
9. php把一个多维数组转化为一个二维数组
<?php
$a = array(
'0' => array(
'cid' => 1,
'name' => '中国',
'child'物山手 => array(
'0' => array(
'cid' => 3,
'name' => '安徽'唯册,
'child' => array(
'0' => array(
'cid' => 7,
'name' => '黄山',
),
), ),
'1' => array(
'cid' => 4,
'name' => '北京',
),
)
)
);
$new = array(); //最后形罩嫌成的
$temp = array(); //临时用的新数据
foreach($a as $key=>$value)
{
if(isset($value['name']))
{
$temp['cid'] = '4';
$temp['name'] = $value['name'];
$new[] = $temp;
}
if(isset($value['child']))
{
if(is_array($value['child']))
{
foreach ($value['child'] as $ky =>$vl)
{
if(isset($vl['name']))
{
$temp['cid'] = '4';
$temp['name'] = $vl['name'];
$new[] = $temp;
}
if(isset($vl['child']))
{
foreach ($vl['child'] as $k => $v)
{
if(isset($v['name']))
{
$temp['cid'] = '4';
$temp['name'] = $v['name'];
$new[] = $temp;
}
}
}
}
}
}
}
print_r($new);
?>
输出结果
Array
(
[0] => Array
(
[cid] => 4
[name] => 中国
)
[1] => Array
(
[cid] => 4
[name] => 安徽
)
[2] => Array
(
[cid] => 4
[name] => 黄山
)
[3] => Array
(
[cid] => 4
[name] => 北京
)
)
10. PHP 合并数组变成二维数组
<?php
$array_1_1=array("星期一","星期一","星期一");
$array_1_2=array("mon","mon","mon");
$array_2_1=array("星期二","星期二","星期二");
$array_2_2=array("tue","tue","tue");
$var_name='array_';
$num_of_groups=2;
$object_array=array();
for($g=1;$g<=$num_of_groups;$g++){
$vbase='array_'.$g;
$vname=$vbase.'兆扒_1';
$o['china']=implode(',',$$vname);
$vname=$vbase.'_2';
$o['en']=implode(',',$$vname);
$object_array[]=(object)$o;
}
var_mp($object_array);
===============
array
0 =>
object(stdClass)[1]
public 'china' => string '星期一,星期一,星期一' (length=20)
public 'en' => string 'mon,mon,mon' (length=11)
1 =>
object(stdClass)[2]
public 'china' => string '星期二,星期二,星期二' (length=20)
public 'en' => string 'tue,tue,tue' (length=11)
=========
以上能得到闷做与题目完全一致的结果。
但要指出$array_1_2这种“使用变量名称来实现可变维度”的方法是严重的误用。违反了封族罩昌装、抽象、效率等多个原则。完全可以改用数组。