php数组纵向转横向
2015-06-17 18:19
921 查看
大牛的方法http://bbs.csdn.net/topics/390848153?page=1#post-397891735
[php] view
plaincopy
$a = array(
6=>array(5=>'黑xx', 42=>'XXL'),
7=>array(5=>'黑xx', 40=>'XL'),
8=>array(8=>'灰', 40=>'XL'),
);
foreach($a as $r) {
$i = 0;
while(list($k, $v) = each($r)) $b[$i++][$k] = $v;
}
print_r($b);
笨方法,但实现效果了,期待好的方法
[php] view
plaincopy
//a1
array(
6=>array('黑xx', 'XXL'),
7=>array('黑xx', 'XL'),
8=>array('灰', 'XL'),
);
//a2
array(
6=>array(5, 42),
7=>array(5, 40),
8=>array(8, 40),
);
//结果:
array(
0=>array(5=>'黑xx', 8=>'灰'),
1=>array(42=>'XXL', 40=>'XL'),
);
//笨方法实现
//合并a1,a2 = a3
$a3 = array(
6=>array(5=>'黑xx', 42=>'XXL'),
7=>array(5=>'黑xx', 40=>'XL'),
8=>array(8=>'灰', 40=>'XL'),
);
//键名初始从0递增
$a3_new = array();
foreach($a3 as $v)
{
$a3_new[] = array_merge($v);
}
//x长度
$x = count($a3_new[0]);
//结果数组
$ary = array();
//因为是合并纵(y)列,所以数组长度=x长度(2列)
for($i=0; $i<$x; $i++)
{
$x_list = array();//y列所有值
//遍历y列
foreach($a3_new as $v)
{
$x_list[] = $v[$i];
}
$ary[] = $x_list;
}
print_r($ary);
exit;
[php] view
plaincopy
$a = array(
6=>array(5=>'黑xx', 42=>'XXL'),
7=>array(5=>'黑xx', 40=>'XL'),
8=>array(8=>'灰', 40=>'XL'),
);
foreach($a as $r) {
$i = 0;
while(list($k, $v) = each($r)) $b[$i++][$k] = $v;
}
print_r($b);
笨方法,但实现效果了,期待好的方法
[php] view
plaincopy
//a1
array(
6=>array('黑xx', 'XXL'),
7=>array('黑xx', 'XL'),
8=>array('灰', 'XL'),
);
//a2
array(
6=>array(5, 42),
7=>array(5, 40),
8=>array(8, 40),
);
//结果:
array(
0=>array(5=>'黑xx', 8=>'灰'),
1=>array(42=>'XXL', 40=>'XL'),
);
//笨方法实现
//合并a1,a2 = a3
$a3 = array(
6=>array(5=>'黑xx', 42=>'XXL'),
7=>array(5=>'黑xx', 40=>'XL'),
8=>array(8=>'灰', 40=>'XL'),
);
//键名初始从0递增
$a3_new = array();
foreach($a3 as $v)
{
$a3_new[] = array_merge($v);
}
//x长度
$x = count($a3_new[0]);
//结果数组
$ary = array();
//因为是合并纵(y)列,所以数组长度=x长度(2列)
for($i=0; $i<$x; $i++)
{
$x_list = array();//y列所有值
//遍历y列
foreach($a3_new as $v)
{
$x_list[] = $v[$i];
}
$ary[] = $x_list;
}
print_r($ary);
exit;
相关文章推荐
- 10个不太为人所知的,但实用的PHP函数
- 国内外主要的PHP开源CMS系统分析
- php dump mysql 数据库,生成数据库脚本
- php中header函数参数的Cache-control:private,no-cache,must-revalidate,max-age的使用方法
- Yii2框架之Cookie加密篇
- Yii2中DI(依赖注入)的使用方法案例
- yii2的权限管理系统RBAC简单介绍
- PHP实现HTTP断点续传的方法
- Php中的预定义字符处理
- php分页原理
- TP 3.1 验证码运用
- yii2 [行为] behaviors 拦截器
- PHP实现在线阅读PDF文件的方法
- 嵌入式ftp服务器移植
- 如果在线显示php源代码
- php源码分析之DZX1.5字符串截断函数cutstr用法
- phpmailer
- php源码分析之DZX1.5加密解密函数authcode用法
- php 依赖注入容器(dependency injection container)
- vtkPolyData中GetPoint函数冲掉上一个数据的问题