Array Functions
PHP Manual

natsort

(PHP 4, PHP 5)

natsortآرایه را با استفاده از الگوریتم "ترتیب طبیعی" را مرتب کنید

Description

bool natsort ( array &$array )

این تابع الگوریتمی پیاده می‌کند که رشته‌های عددی الفبایی را به صورت انسانی مرتب می‌کند در عین حال ارتباط کلید/مقدار را حفظ می‌کند. این به عنوان "ترتیب طبیعی" یاد می‌شود. یک مثال از تفاوت بین این الگوریتم و الگوریتم‌های مرتب‌سازی رشته معمولی کامپیوتر (استفاده شده در sort()) در پایین دیده می‌شود.

Parameters

array

آرایه ورودی.

Return Values

Returns TRUE on success or FALSE on failure.

Changelog

Version Description
5.2.10 عددهای جدا شده توسط صفر (به عنوان مثال '00005') اساسا 0 را در نظر نمی‌گیرد

Examples

Example #1 مثال natsort() نمایش‌دهنده استفاده اساسی

<?php
$array1 
$array2 = array("img12.png""img10.png""img2.png""img1.png");
asort($array1);
echo 
"Standard sorting\n";
print_r($array1);

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

The above example will output:

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

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

برای اطلاعات بیشتر » مقایسه ترتیبی رشته طبیعی Martin Pool را ببینید.

Example #2 مثال‌های natsort() نشان‌دهنده گرفتنی‌های ممکن

<?php
echo "Negative numbers\n";
$negative = array('-5','3','-2','0','-1000','9','1');
print_r($negative);
natsort($negative);
print_r($negative);

echo 
"Zero padding\n";
$zeros = array('09''8''10''009''011''0');
print_r($zeros);
natsort($zeros);
print_r($zeros);

echo 
"Other characters interfering\n";
$images_oops = array('image_1.jpg','image_12.jpg''image_21.jpg''image_4.jpg');
print_r($images_oops);
natsort($images_oops);
print_r($images_oops);

echo 
"Sort by keys\n";
$smoothie = array('orange' => 1'apple' => 1'yogurt' => 4'banana' => 4);
print_r($smoothie);
uksort$smoothie'strnatcmp');
print_r($smoothie);
?>

The above example will output:

Negative numbers
Array
(
    [0] => -5
    [1] => 3
    [2] => -2
    [3] => 0
    [4] => -1000
    [5] => 9
    [6] => 1
)
Array
(
    [2] => -2
    [0] => -5
    [4] => -1000
    [3] => 0
    [6] => 1
    [1] => 3
    [5] => 9
)

Zero padding
Array
(
    [0] => 09
    [1] => 8
    [2] => 10
    [3] => 009
    [4] => 011
    [5] => 0
)
Array
(
    [5] => 0
    [1] => 8
    [3] => 009
    [0] => 09
    [2] => 10
    [4] => 011
)

Other characters interfering
Array
(
    [0] => image_1.jpg
    [1] => image_12.jpg
    [2] => image_21.jpg
    [3] => image_4.jpg
)
Array
(
    [0] => image_1.jpg
    [3] => image_4.jpg
    [1] => image_12.jpg
    [2] => image_21.jpg
)

Sort by keys
Array
(
    [orange] => 1
    [apple]  => 1
    [yogurt] => 4
    [banana] => 4
)
Array
(
    [apple]  => 1
    [banana] => 4
    [orange] => 1
    [yogurt] => 4
)

See Also


Array Functions
PHP Manual