请大神帮忙 php二维数组重新排序

php中文网
发布: 2016-06-20 12:28:11
原创
1027人浏览过

array ( array ('id' => 3, 'username' => 'alex ','parentname'=> 'john'  
       ,'proname' => 'tttt' 'num'=> 1 ,  'userid' =>6 ,'parentid'=>8 ,
   'cpid'=>  0 ,'mobile'=> 15533336666 ,'parentmobile' => 156477765465) );
 把最后两个分别放在第2个和第4个位置 ,怎么重新排序?
array ( array ('id' => 3, 'username' => 'alex ','mobile'=> 15533336666 
      ,'parentname'=> 'john' ,'parentmobile' => 156477765465   ,'proname' => 'tttt' 'num'=> 1 , 
  'userid' =>6 ,'parentid'=>8 ,'cpid'=>  0  );

AI帮个忙
AI帮个忙

多功能AI小工具,帮你快速生成周报、日报、邮、简历等

AI帮个忙 55
查看详情 AI帮个忙


回复讨论(解决方案)

你这算什么排序?
不就是调一下位置吗?为什么要调呢?

最后要用excel输出呀,不这样排序的话,格式全乱了

从数据库里面调出100条的话,有无这样的排序办法?

你这算什么排序?
不就是调一下位置吗?为什么要调呢?



你这算什么排序?
不就是调一下位置吗?为什么要调呢?




有办法调位置吗?谢谢了

从数据库里面调出100条的话,有无这样的排序办法?


从数据库?你查询的时候直接改变下顺序不就行了?

 


从数据库里面调出100条的话,有无这样的排序办法?


从数据库?你查询的时候直接改变下顺序不就行了?

最后两个字段还是从另外的表间接查询的结果,然后用数组追加进来的,所以就导致现在的这个位置问题

1、从数据库里取出时,不要简单的 select *
  而是 select id, username, mobile .... 这样一一开列,你要求的排列顺序不就有了
2、用 php 代码也是可以的

$a = Array ( Array ('id' => 3, 'username' => 'alex ','parentname'=> 'john'         ,'proname' => 'tttt', 'num'=> 1 ,  'userid' =>6 ,'parentid'=>8 ,   'cpid'=>  0 ,'mobile'=> 15533336666 ,'parentmobile' => 156477765465) );$k = Array ('id', 'username', 'mobile', 'parentname', 'parentmobile', 'proname', 'num', 'userid', 'parentid', 'cpid');foreach($a as $i=>$v) {  extract($v);  $a[$i] = compact($k);}print_r($a);
登录后复制
Array(    [0] => Array        (            [id] => 3            [username] => alex             [mobile] => 15533336666            [parentname] => john            [parentmobile] => 156477765465            [proname] => tttt            [num] => 1            [userid] => 6            [parentid] => 8            [cpid] => 0        ))
登录后复制

你的是key=>value
怎么排都不影响使用。

不过可以这样写

<?php$arr = array(    array('id'=>3,'username'=>'alex','parentname'=>'john','proname'=>'tttt','num'=> 1 ,  'userid' =>6 ,'parentid'=>8 ,'cpid'=>  0 ,'mobile'=> 15533336666 ,'parentmobile' => 156477765465),    array('id'=>3,'username'=>'alex','parentname'=>'john','proname'=>'tttt','num'=> 1 ,  'userid' =>6 ,'parentid'=>8 ,'cpid'=>  0 ,'mobile'=> 15533336666 ,'parentmobile' => 156477765465),    array('id'=>3,'username'=>'alex','parentname'=>'john','proname'=>'tttt','num'=> 1 ,  'userid' =>6 ,'parentid'=>8 ,'cpid'=>  0 ,'mobile'=> 15533336666 ,'parentmobile' => 156477765465),);$result = array();$fields = array('id','username','mobile','parentname','parentmobile','proname','num','userid','parentid','cpid');foreach($arr as $k=>$v){    $tmp = array();    foreach($fields as $f){        $tmp[$f] = $v[$f];    }    $result[] = $tmp;}print_r($result);
登录后复制

多谢大家指点了

如问题解决了请结帖。

PHP速学教程(入门到精通)
PHP速学教程(入门到精通)

PHP怎么学习?PHP怎么入门?PHP在哪学?PHP怎么学才快?不用担心,这里为大家提供了PHP速学教程(入门到精通),有需要的小伙伴保存下载就能学习啦!

下载
来源:php中文网
本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系admin@php.cn
最新问题
开源免费商场系统广告
热门教程
更多>
最新下载
更多>
网站特效
网站源码
网站素材
前端模板
关于我们 免责申明 举报中心 意见反馈 讲师合作 广告合作 最新更新 English
php中文网:公益在线php培训,帮助PHP学习者快速成长!
关注服务号 技术交流群
PHP中文网订阅号
每天精选资源文章推送
PHP中文网APP
随时随地碎片化学习

Copyright 2014-2025 https://www.php.cn/ All Rights Reserved | php.cn | 湘ICP备2023035733号