PHP  
downloads | documentation | faq | getting help | mailing lists | reporting bugs | php.net sites | links | my php.net 
search for in the  
<natcasesortnext>
Last updated: Mon, 16 Jul 2012

natsort

(PHP 4, PHP 5)

natsort --  用“自然排序”算法对数组排序

说明

void natsort ( array array )

本函数实现了一个和人们通常对字母数字字符串进行排序的方法一样的排序算法,这被称为“自然排序”。本算法和通常的计算机字符串排序算法(用于 sort())的区别示例如下:

例子 1. natsort() 例子

<?php
$array1
= $array2 = array ("img12.png", "img10.png", "img2.png", "img1.png");

sort($array1);
echo
"Standard sorting\n";
print_r($array1);

natsort($array2);
echo
"\nNatural order sorting\n";
print_r($array2);
?>

以上代码显示结果为:

Standard sorting
Array
(
    [0] => img1.png
    [1] => img10.png
    [2] => img12.png
    [3] => img2.png
)

Natural order sorting
Array
(
    [3] => img1.png
    [2] => img2.png
    [1] => img10.png
    [0] => img12.png
)

更多信息见 Martin Pool 的 Natural Order String Comparison 页面。

注: 如果你想保持索引/值的关联,考虑使用 uasort($arr, 'strnatcmp')

参见 natcasesort()strnatcmp()strnatcasecmp()




<natcasesortnext>
 Last updated: Mon, 16 Jul 2012
 
Copyright © 2001-2005 The PHP Group
All rights reserved.
This unofficial mirror is operated at: http://manual.phpv.net/
Last updated: Thu Jul 7 19:13:47 2005 CST