(PHP 4, PHP 5, PHP 7, PHP 8)
natsort — Bir diziyi "doğal sıralama" algoritmasıyla sıralar
&$array
) : boolBu işlev, abecesayısal dizgeleri, insanların anahtar değer ilişkisini sağlayarak yaptıkları şekilde gerçekleyen bir sıralama algoritmasını kullanarak sıralar. Bu algoritmaya "doğal sıralama" algoritması adı verilir. Bu algoritma ile sort() işlevinin yaptığı standart sıralama arasındaki farkı gösteren bir örnek aşağıdadır.
Bilginize:
İki üye karşılaştırıldığında eşitse bunların sıralı dizi içindeki göreli sırası tanımsızdır.
dizi
Sıralanacak dizi.
Başarı durumunda true
, başarısızlık durumunda false
döner.
Örnek 1 - natsort() genel kullanım örnekleri
<?php
$array1 = $array2 = array("img12.png", "img10.png", "img2.png", "img1.png");
asort($array1);
echo "Standart sıralama\n";
print_r($array1);
natsort($array2);
echo "\nDoğal sıralama\n";
print_r($array2);
?>
Yukarıdaki örneğin çıktısı:
Standart sıralama Array ( [3] => img1.png [1] => img10.png [0] => img12.png [2] => img2.png ) Doğal sıralama Array ( [3] => img1.png [2] => img2.png [1] => img10.png [0] => img12.png )
Daha fazla bilgi için Martin Pool'un » Natural Order String Comparison sayfasına bakınız.
Örnek 2 - Olası sorunları gösteren natsort() örnekleri
<?php
echo "Negatif sayılar\n";
$negative = array('-5','3','-2','0','-1000','9','1');
print_r($negative);
natsort($negative);
print_r($negative);
echo "Sıfır doldurma\n";
$zeros = array('09', '8', '10', '009', '011', '0');
print_r($zeros);
natsort($zeros);
print_r($zeros);
?>
Yukarıdaki örneğin çıktısı:
Negatif sayılar 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 ) Sıfır doldurma 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 )