社区
基础编程
帖子详情
PHP数组排序问题
luits
2008-09-20 10:04:53
PHP数组排序问题
$array=array('orange'=>84, 'blue'=>30, 'banana'=>99);
请问题如何给这个数组分别对数组名和数组值进行排序?请写出你自己的算法而不是使用PHP函数自带的排序函数。
不用自带函数估计大家觉得有点没事找茬,但别人的要求就是这样!
...全文
196
6
打赏
收藏
PHP数组排序问题
PHP数组排序问题 $array=array('orange'=>84, 'blue'=>30, 'banana'=>99); 请问题如何给这个数组分别对数组名和数组值进行排序?请写出你自己的算法而不是使用PHP函数自带的排序函数。 不用自带函数估计大家觉得有点没事找茬,但别人的要求就是这样!
复制链接
扫一扫
分享
转发到动态
举报
写回复
配置赞助广告
用AI写文章
6 条
回复
切换为时间正序
请发表友善的回复…
发表回复
打赏红包
luits
2008-09-20
打赏
举报
回复
[Quote=引用 4 楼 yunfeifan 的回复:]
if($keys[$j] > $keys[$j + 1]){
$tmp = $keys[$j];
$keys[$j] = $keys[$j + 1];
$keys[$j + 1] = $tmp;
}
}
[/Quote]
这样也可以比较字符的大小!好办法!
[Quote=引用 4 楼 yunfeifan 的回复:]
foreach($keys as $k => $v){
$result[$v] = $array[$v];
}
[/Quote]
嗯这个办法帮我很大的忙,代码也是满精减的了,谢谢yunfeifan兄
yunfeifan
2008-09-20
打赏
举报
回复
字符串也可以比较,开始把键名放到另外一个数组中做value,然后进行比较,也是一样的
<?php
$array = array("yellow"=>1, "green"=>2, "blue"=>3, "white"=>4, "grey"=>5);
$keys = array();
foreach($array as $key => $value){
$keys[] = $key;
}
for($i = count($array) - 1; $i > 0; $i--){
for($j = 0 ;$j < $i; $j ++){
if($keys[$j] > $keys[$j + 1]){
$tmp = $keys[$j];
$keys[$j] = $keys[$j + 1];
$keys[$j + 1] = $tmp;
}
}
}
foreach($keys as $k => $v){
$result[$v] = $array[$v];
}
print_r($result);
?>
这个应该不是最优化的,大家还有什么好的办法
macleane
2008-09-20
打赏
举报
回复
先判断是不是数字,如果不是就用strcmp比较
luits
2008-09-20
打赏
举报
回复
冒泡排序法 这个想法是不错。你这个办法可以处理到数组的值如84 30 99,但是这里还有个键值要处理。如array('orange'=>90),这里键值并非数值,不能是简单的数字循环来排序。如何处理这个东西??
fxs_2008
2008-09-20
打赏
举报
回复
网上查查冒泡排序法写一个吧
对数据值排序好排
但那键名排序涉字母排序,麻烦一点
yunfeifan
2008-09-20
打赏
举报
回复
array_keys 可以返回数组的键名
php
多维
数组
排序
php
多维
数组
排序
,应用
php
的多维
数组
排序
函数
php
二维
数组
按
数组
键值进行
排序
php
对二维
数组
按
数组
键值进行
排序
@param array $array 要
排序
的
数组
@param string $key
排序
依据字段 @param string $order
排序
方式,0为降序,1为升序
PHP
7
数组
精讲【king】
由King老师精心录制的
PHP
7
数组
详解,主要介绍什么是
数组
,以及
数组
的作用,及分类,并深度剖析
数组
的几种形式,如何使用,重点剖析如何遍历
数组
,还给大家归纳总结了
数组
中常用API,后通过一个实战小例子,将
数组
中...
PHP
数组
排序
函数合集 以及它们之间的联系分析
本篇文章是对
PHP
数组
排序
函数合集以及它们之间的联系进行了详细的分析介绍,需要的朋友参考下
php
二维
数组
排序
这是
php
实现的二维
数组
排序
的相关代码,有不同的实现方法
基础编程
21,882
社区成员
140,366
社区内容
发帖
与我相关
我的任务
基础编程
从PHP安装配置,PHP入门,PHP基础到PHP应用
复制链接
扫一扫
分享
社区描述
从PHP安装配置,PHP入门,PHP基础到PHP应用
社区管理员
加入社区
获取链接或二维码
近7日
近30日
至今
加载中
查看更多榜单
社区公告
暂无公告
试试用AI创作助手写篇文章吧
+ 用AI写文章