社区
基础编程
帖子详情
多维数组排序问题请教 急!
paradisfuna
2003-08-18 03:26:04
急!
在一个多位数组中,如何根据元素(array)中的某一列进行排序?
例如数组 a = array(array("item1"=>"a","item2"="b"),array("item1"=>"a","item2"="b"))
如何将数组按照item1的值排序呢?有什么现成的函数?如何使用?谢谢。
...全文
60
5
打赏
收藏
多维数组排序问题请教 急!
急! 在一个多位数组中,如何根据元素(array)中的某一列进行排序? 例如数组 a = array(array("item1"=>"a","item2"="b"),array("item1"=>"a","item2"="b")) 如何将数组按照item1的值排序呢?有什么现成的函数?如何使用?谢谢。
复制链接
扫一扫
分享
转发到动态
举报
写回复
配置赞助广告
用AI写文章
5 条
回复
切换为时间正序
请发表友善的回复…
发表回复
打赏红包
paradisfuna
2003-08-19
打赏
举报
回复
自己写了一个函数,不过只针对有固定的结构的二位数组。
function array_sort($arr,$keys,$type="asc") {
$keysvalue = array();
foreach($arr as $key=>$val) {
$keysvalue[] = $val[$keys];
}
if($type=="asc"){
asort($keysvalue);
}else {
rsort($keysvalue);
}
reset($keysvalue);
foreach($keysvalue as $key=>$vals) {
$keysort[] = $key;
}
$new_array = array();
for($ii=0; $ii<count($keysort); $ii++) {
$new_array[] = $arr[$keysort[$ii]];
}
return $new_array;
}
请多多指教
paradisfuna
2003-08-18
打赏
举报
回复
谢谢,:)。
终于看懂了,:)
xuzuning
2003-08-18
打赏
举报
回复
多维数组排序时没有预设的方法。因为php的数组是巢状结构,并不通常意义上的数组的行列结构。
这里使用自定义排序函数:usort
该函数的第二个参数是自定义的回调函数,传入参数两个,返回值为:-1,0,1之一
所贴array_sort使用了创建临时函数的函数caerte_function
展开后是
function cmd($a,$b) {
global $k;
if($a[$k] == $b[$k]) return 0;
return $a[$k]>$b[$k]?1:-1;
}
usort($array,cmd);
// 数组排序
function array_sort($array,$key=0,$type="asc") {
$s = 'if($a['.$key.'] == $b['.$key.']) return 0;';
if($type == "asc")
$s .= 'return $a['.$key.'] == $b['.$key.']?1:-1;';
else
$s .= 'return $a['.$key.'] == $b['.$key.']?-1:1;';
$newfunc = create_function('$a,$b',$s);
usort($array,$newfunc);
return $array;
}
$ar = array(
array(1,3,2,4),
array(3,2,4,1)
);
print_r(array_sort($ar,1));
paradisfuna
2003-08-18
打赏
举报
回复
没明白array_sort func 中的$a是?
xuzuning
2003-08-18
打赏
举报
回复
function array_sort($array,$key=0,$type="asc") {
$s = 'if($a['.$key.'] == $b['.$key.']) return 0;';
if($type == "asc")
$s .= 'return $a['.$key.'] == $b['.$key.']?1:-1;';
else
$s .= 'return $a['.$key.'] == $b['.$key.']?-1:1;';
usort($array,$newfunc);
return $array;
}
$ar = array(
array(1,3,2,4),
array(3,2,4,1)
);
print_r(array_sort($ar,1));
php把400个
数组
建二维,
请教
怎么将
多维
数组
转换为二维
数组
请问如何将
多维
数组
转换为二维
数组
?比如无限级菜单,通过递归后是一个
多维
数组
,我想把这个
多维
数组
转换为二维
数组
并重新
排序
后进行foreach,请问这个function该如何写?------解决方案--------------------$a=array(0=>array('categoryid'=>1,'name'=>"AA1",'parent'=>0,'childs'=...
C/C++中的二维
数组
,以及
多维
数组
及其指针
数组
是编程语言中常见的数据类型,有必要二维以及
多维
数组
,以及对应的指针,做一个梳理,便于以后查询。 首先你要区分不同的指针,尤其是二级指针与二维
数组
的行指针,二级指针与指针
数组
。。 学习编程,最好结合计算机内存一起理解。还是先从最基本的开始。 之前写过一篇二维
数组
的博客,参考: https://blog.csdn.net/edward_zcl/article/details/89100600 ...
mysql聚类函数
排序
_
请教
个mysql
问题
.关于获取查询结果中某一个字段的最大值(按照其他字段
排序
)...
每次求助这样的
问题
都蛮不好意思的... 不过经常来不及去查手册找办法... 只好再伸下手...
问题
是这样的. 进行一个常规的查询,按字段a进行倒序排列. 但是又想获得这次查询中字段b的最大值php好像没有提供直接获取
多维
数组
最大键值的函数.. 要自己写
排序
也不是不可以 但是还是想问下 在mysql这边能否直接查出来(并且不能有太多的性能损失 否则不如去用php计算了)谢谢回复讨论(解决方案)...
python 二维
数组
心得_基于python 二维
数组
及画图的实例详解
python中如何使用二维
数组
在Python中,一个像这样的
多维
表格可以通过“序列的序列”实现。一个表格是行的序列。每一行又是独立单元格的序列。这类似于小编们使用的数学记号,在数学里小编们用Ai,j,而在Python里小编们使用A[i][j],代表矩阵的第i行第j列。python 如何定义动态二维
数组
Python中创建二维列表/
数组
,即创建一个list,并且这个list的元素还是list。可以用列...
201521123069 《Java程序设计》 第2周学习总结
1. 本章学习总结 (1)String类、StringBuilder类(频繁进行字符串的修改应选用StringBuilder,不会生成大量的字符串对象)、Math类的用法、字符串池的概念 (2)Scanner扫描器用法 (3)一维
数组
、二维
数组
及
多维
数组
的使用(
数组
的静态初始化、动态初始化、
数组
元素的引用)、利用Arrays类相应的方法对
数组
进行复制、打印、
排序
等操作。 (4)完全限定类...
基础编程
21,887
社区成员
140,363
社区内容
发帖
与我相关
我的任务
基础编程
从PHP安装配置,PHP入门,PHP基础到PHP应用
复制链接
扫一扫
分享
社区描述
从PHP安装配置,PHP入门,PHP基础到PHP应用
社区管理员
加入社区
获取链接或二维码
近7日
近30日
至今
加载中
查看更多榜单
社区公告
暂无公告
试试用AI创作助手写篇文章吧
+ 用AI写文章