update page now

natcasesort

(PHP 4, PHP 5, PHP 7, PHP 8)

natcasesortBir diziyi harf büyüklüğüne duyarsız "doğal sıralama" algoritmasıyla sıralar

Açıklama

natcasesort(array &$dizi): true

natcasesort() işlevi natsort() işlevinin harf büyüklüğüne duyarsız sürümüdür.

Bu 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.

Bilginize:

İki üye karşılaştırıldığında eşitse bunların özgün sıralamadaki yerleri korunur. PHP 8.0.0 öncesinde sıralı dizideki göreli yerleri tanımsızdı.

Bilginize:

Dahili dizi göstericisi ilk elemana atanır.

Bağımsız Değişkenler

dizi

Sıralanacak dizi.

Dönen Değerler

Daima true döndürür.

Sürüm Bilgisi

Sürüm: Açıklama
8.2.0 Dönüş türü artık true;evvelce, bool idi.

Örnekler

Örnek 1 - natcasesort() örneği

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

sort($array1);
echo
"Standart sıralama\n";
print_r($array1);

natcasesort($array2);
echo
"\nDoğal sıralama (harf büyüklüğüne duyarsız)\n";
print_r($array2);
?>

Yukarıdaki örneğin çıktısı:

Standart sıralama
Array
(
    [0] => IMG0.png
    [1] => IMG3.png
    [2] => img1.png
    [3] => img10.png
    [4] => img12.png
    [5] => img2.png
)

Doğal sıralama (harf büyüklüğüne duyarsız)
Array
(
    [0] => IMG0.png
    [4] => img1.png
    [3] => img2.png
    [5] => IMG3.png
    [2] => img10.png
    [1] => img12.png
)

Daha fazla bilgi için Martin Pool'un » Natural Order String Comparison sayfasına bakınız.

Ayrıca Bakınız

  • natsort() - Bir diziyi "doğal sıralama" algoritmasıyla sıralar
  • Dizilerde Sıralama
  • strnatcmp() - "Doğal sıralama" algoritmasını kullanarak dizgeleri karşılaştırır
  • strnatcasecmp() - "Doğal sıralama" algoritmasını kullanarak dizgeleri harf büyüklüğüne duyarsız olarak karşılaştırır

add a note

User Contributed Notes 1 note

up
46
dslicer at maine dot rr dot com
22 years ago
Something that should probably be documented is the fact that both natsort and natcasesort maintain the key-value associations of the array. If you natsort a numerically indexed array, a for loop will not produce the sorted order; a foreach loop, however, will produce the sorted order, but the indices won't be in numeric order. If you want natsort and natcasesort to break the key-value associations, just use array_values on the sorted array, like so:

natcasesort($arr);
$arr = array_values($arr);
To Top