(PHP 4, PHP 5, PHP 7)
strnatcmp — "Doğal sıralama" algoritmasını kullanarak dizgeleri karşılaştırır
$d1
, string $d2
)Bu işlev, "doğal sıralama" adı verilen ve alfasayısal dizgeleri insanlarca yapılan sıralamaya uygun olarak sıralayan bir algoritmayı gerçekler. Karşılaştırma harf büyüklüğüne duyarlı olarak yapılır.
d1İlk dizge.
d2İkinci dizge.
d1 dizgesi d2 dizgesinden
küçükse sıfırdan küçük bir değer; d1 dizgesi
d2 dizgesinden büyükse sıfırdan büyük bir değer;
d1 dizgesi ile d2 dizgesi
aynıysa sıfır döndürür.
Bu örnekte, bilgisiyar dizge sıralaması yapan strcmp() işlevi ile insani dizge sıralaması yapan strnatcmp() işlevinin sonuçları karşılaştırılmıştır:
<?php
$arr1 = $arr2 = array("img12.png", "img10.png", "img2.png", "img1.png");
echo "Standart dizge karşılaştırması\n";
usort($arr1, "strcmp");
print_r($arr1);
echo "\nDoğal dizge sıralama karşılaştırması\n";
usort($arr2, "strnatcmp");
print_r($arr2);
?>
Yukarıdaki örneğin çıktısı:
Standart dizge karşılaştırması
Array
(
[0] => img1.png
[1] => img10.png
[2] => img12.png
[3] => img2.png
)
Doğal dizge sıralama karşılaştırması
Array
(
[0] => img1.png
[1] => img2.png
[2] => img10.png
[3] => img12.png
)