PHP获取字符串/数字按正确的顺序

问题描述:

我累了数组和列表的是这样的:PHP获取字符串/数字按正确的顺序

Array(
    [0] Item 1 
    [1] Item 10 
    [2] Item 11 
    [3] Item 2 
    [4] Item 3 
    ) 

PHP是否有一个快速的方法,从而,显示这让10后自带1 2, 3 ...?

看起来像你需要自然排序算法。 natsort函数在PHP中做到这一点。

$items = array('item 1', 'item 2', 'item 3', 'item 10'); 
natsort($items); 
print_r($items) 

输出

阵列([0] =>项1 1 =>项目2 [2] =>项目3 [3] =>项目10)

+0

致命的!哇,希望我在这年前知道。谢谢!! – emc 2012-01-30 07:18:03

尝试函数排序:

sort(<array-name> , SORT_NUMERIC); 

它会按升序排列数组中的数值。

使用下面的PHP函数:

<?php 
$myArray = array("0" => "1", "1" => "10", "2" => "11", "3" => "2", "4" => "3"); 

asort($myArray); 

foreach($myArray as $key => $value) { 
    echo "$key - $value <br />"; 
} 
?> 

这里是例子:sort number with string

+0

这是没有办法回答OP的问题,因为你的'$ myArray'完全不同。 – nickb 2012-01-30 07:11:37

+1

对不起,使用'natsort()'函数,它会对数字和字符串进行排序。 。 – 2012-01-30 07:18:22