Fungsi strnatcmp()
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: Fungsi ini peka huruf besar / kecil(case-sensitive).
strnatcmp(string1,string2)
Parameter | Deskrispi |
---|---|
string1 | Required. Menentukan string pertama untuk dibandingkan |
string2 | Required. Menentukan string kedua untuk dibandingkan |
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” (peka huruf besar-kecil):
<?php echo strnatcmp("2Hello world!","10Hello world!"); echo "<br>"; echo strnatcmp("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 )