![]() | 1 huntzhan 2017-10-04 18:16:18 +08:00 没看懂,我觉得你可能需要锻炼一下表述能力 |
2 jhdxr 2017-10-04 18:16:43 +08:00 asort |
3 jhdxr 2017-10-04 18:18:48 +08:00 不对,这不是直接 sort 就能搞定的吗?问题在哪? |
![]() | 4 xzem 2017-10-04 18:21:48 +08:00 via Android 楼主是认为当值是字符串数字时没法直接用 sort 吗? |
![]() | 5 crab 2017-10-04 18:55:26 +08:00 冒泡排序下 |
![]() | 6 Sikoay 2017-10-04 19:18:35 +08:00 via Android 先转换为 int 再比较排序啊 |
![]() | 7 messyidea 2017-10-04 19:22:49 +08:00 字符串默认的比较函数不就是字典序么 |
![]() | 8 shiny 2017-10-04 19:31:33 +08:00 <?php $items =["111", "333", "555", "222", "444", "666"]; sort($items); var_dump($items); 结果没有问题吧,担心哪天 PHP 行为不按数字类型比较的话,翻手册 sort 有个参数可以设置成 SORT_NUMERIC |
![]() | 9 60791151 2017-10-05 08:16:17 +08:00 转成 int 然后再排序 |
![]() | 10 gouchaoer 2017-10-05 12:52:00 +08:00 via Android 在业务代码里你不需要知道是 int 还是 string,而且印象里从数据库查到的数据都是 string |
11 zhx1991 2017-10-05 23:49:28 +08:00 想这样排是怎么排? 规则没说清楚啊 99 比 0111 大还是小? 输入有除了 0-9 的其它字符吗? 字符串长度有限制吗? |
![]() | 12 aimerforreimu 2017-11-10 15:15:33 +08:00 ```php $test = array ( '111','222','444','555','777','333','666' ); sort($test); echo '<pre>'; var_dump($test); ``` 直接用 sort 啊 |