PHP 数组函数

PHPnatsort( )函数用于使用"自然顺序"算法对数组进行排序。 natsort() 函数实现排序算法,但保留原始键和值。此函数是在 PHP 4.0 中引入的。

语法

bool natsort ( array &$array ); 

参数

参数描述必须/可选
array指定要排序的数组必须

返回值

natsort( ) 函数在成功时返回 true,在失败时返回 false。

例子1

<?php
$language = array("java 8","php 5","python","Ruby","html");
sort($language);
echo "Standard sorting: ";
print_r($language);
natsort($language);
echo "Natural order: ";
print_r($language);
?> 

输出:

Standard sorting: Array
(
[0] => Ruby
[1] => html
[2] => java 8
[3] =>php 5
[4] => python
)
Natural order: Array
(
[0] => Ruby
[1] => html
[2] => java 8
[3] =>php 5
[4] => python
)

例子2

<?php
$arr1 = array("code12.php", "code22.php","code2.php", "code3.php", "code1.php");
$arr2 = $arr1;
sort($arr1);
echo "Standard sorting\n";
print_r($arr1);
natsort($arr2);
echo "\nNatural order sorting\n";
print_r($arr2);
?> 

输出:

Standard sorting
Array
(
[0] => code1.php
[1] => code12.php
[2] => code2.php
[3] => code22.php
[4] => code3.php
)

Natural order sorting
Array
(
[4] => code1.php
[2] => code2.php
[3] => code3.php
[0] => code12.php
[1] => code22.php
)

例子3

<?php
$arr1 = array("java8", "php5","python3", "ruby2", "android7");
$arr2 = $arr1;
sort($arr1);
echo "Standard sorting\n";
print_r($arr1);
natsort($arr2);
echo "\nNatural order sorting\n";
print_r($arr2);
?> 

输出:

Standard sorting
Array
(
[0] => android7
[1] => java8
[2] => php5
[3] => python3
[4] => ruby2
)
Natural order sorting
Array
(
[4] => android7
[0] => java8
[1] => php5
[2] => python3
[3] => ruby2
)

例子4

<?php
$img1 = array("img12.png", "img10.png", "img2.png", "img1.png");
$img2 = $img1;
sort($img1);
echo "Standard sorting\n";
print_r($img1);
natsort($img2);
echo "\nNatural order sorting\n";
print_r($img2);
?> 

输出:

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
)