如何对数字后面的数字进行排序?

时间:2012-01-04 04:46:54

标签: php arrays

我有一个用前面的数字排序的数组(20(新闻......)。我在后面的下一个数字排序时遇到问题。如果我使用strval,则在数字10,20,30 ..和一个数字的数字,如1,2,3 ...确定任何问题:

Array
( 
    [20(news)19:17] => Array
        (
            [Edisi] => 192Oktober2001 
        )
    [20(news)10:17] => Array
        (
            [Edisi] => 192Oktober2001 
        )
 )

我的意思是

[20(news)10:17] => Array
        (
            [Edisi] => 192Oktober2001 
        )
[20(news)19:17] => Array
        (
            [Edisi] => 192Oktober2001 
        )

1 个答案:

答案 0 :(得分:1)

如果您确定“(news)”部分保持不变,那么简单ksort()可以解决问题。

ksort()根据键对数组进行排序,并按原样更改数组:

$array = array(
    '20(news)19:17' => array(
        'Edisi' => '192Oktober2001',
    ),
    '20(news)10:17' => array(
        'Edisi' => '192Oktober2001',
    ),
);

ksort($array);

// $array is sorted here

证明:http://ideone.com/55nVN