Definisi dan Penggunaan
Fungsi strnatcasecmp() digunakan untuk dapat membandingkan dua string menggunakan algoritma “natural”.
Dalam algoritme natural, angka 2 lebih kecil dari angka 10. Dalam pengurutan komputer, 10 kurang dari 2, karena angka pertama dalam “10” kurang dari 2.
Catatan: strnatcasecmp() peka huruf besar kecil(case-insensitive.).
Syntax
strnatcasecmp(string1,string2)
Nilai Parameter
| Parameter | Deskripsi |
|---|---|
| string1 | Required. Menentukan string pertama untuk dibandingkan |
| string2 | Required. Menentukan string kedua untuk dibandingkan |
Detail Teknis
| Return Value: | Fungsi ini mengembalikan: 0 – jika kedua string sama <0 – jika string1 lebih kecil dari string2 0 – jika string1 lebih besar dari string2 |
|---|---|
| PHP Version: | 4+ |
Contoh 1
Bandingkan dua string menggunakan algoritme “alami” (tidak peka huruf besar / kecil):
<?php echo strnatcasecmp("2Hello world!","10Hello WORLD!"); echo "<br>"; echo strnatcasecmp("10Hello world!","2Hello WORLD!"); ?> /* Output : -1 1
Contoh 2
Perbedaan antara algoritma alami (strnatcmp) dan algoritma penyortiran string komputer biasa (strcmp):
<?php
$arr1 = $arr2 = array("pic1","pic2","pic10","pic01","pic100","pic20","pic30","pic200");
echo "Perbandingan string standar"."<br>";
usort($arr1,"strcmp");
print_r($arr1);
echo "<br>";
echo "Perbandingan string urutan alami"."<br>";
usort($arr2,"strnatcmp");
print_r($arr2);
?>
/* Output :
Perbandingan string standar
Array ( [0] => pic01 [1] => pic1 [2] => pic10 [3] => pic100 [4] => pic2 [5] => pic20 [6] => pic200 [7] => pic30 )
Perbandingan string urutan alami
Array ( [0] => pic01 [1] => pic1 [2] => pic2 [3] => pic10 [4] => pic20 [5] => pic30 [6] => pic100 [7] => pic200 )