Membandingkan Isi String dengan PHP

Kali ini, kita akan mempelajari tentang perbandingan string. Perbandingan string bisa digunakan dalam pengurutan atau algoritma tertentu yang membutuhkannya. Selain dengan operator perbandingan sama dengan(==), PHP menyediakan beberapa function untuk membandingkan isi string, baik itu yang case sensitive maupun yang case insensitive. Function-function tersebut yaitu :
  1. strcmp : Membandingkan dua string (case sensitive)
  2. strcasecmp : Membandingkan dua string (case insensitive)
  3. strncmp : Membandingkan dua string dengan panjang tertentu (case sensitive).
  4. strncasecmp : Membandingkan dua string dengan panjang tertentu (case insensitive)
  5. strnatcmp : Membandingkan dua string dengan algoritma natural order (case sensitive)
  6. strnatcasecmp : Membandingkan dua string dengan algoritma natural order (case insensitive)
  7. similar_text : Mengembalikan nilai dari kesamaan teks.
  8. levenshtein : Membandingkan kesamaan antara dua teks dengan menggunakan "jarak levenshtein".
Function function di atas selain similar_text() dan levenshtein() akan mengembalikan nilai 0 atau nilai lainnya dengan kegunaan sebagai berikut ini :
  1. Mengembalikan nilai 0 jika string sama.
  2. Mengembalikan nilai negatif (< 0), jika string pertama lebih kecil dari string kedua.
  3. Mengembalikan nilai positif (> 0) jika string pertama lebih besar dari string kedua.
Di bawah ini adalah contoh script PHP yang menggunakan perbandingan dengan function strcmp.

<?PHP
    $s1="Contoh string pertama";
    $s2="Contoh string kedua";
    if(strcmp($s1, $s2)>0)echo($s1." lebih besar dari ".$s2) ;
    else if(strcmp($s1, $s2)<0)echo("\"$s1\""." lebih kecil dari "."\"$s2\"") ;
    else echo($s1." sama dengan ".$s2) ;
?>

Pada contoh script di atas, kita menggunakan strcmp untuk membandingkan string pertama dan string kedua berdasarkan urutan alfabetnya sekaligus perbedaan huruf besar dan huruf kecilnya. Kalian bisa mengganti strcmp dengan strcasecmp jika kalian ingin perbandingannya tidak membedakan huruf besar dan huruf kecil. Kalian juga bisa menggunakan strtolower atau strtoupper untuk menyamakan semua huruf agar jadi huruf besar atau huruf kecil.

Function-function yang ada str dan cmpnya, kegunaannya hampir semuanya sama. Untuk similar_text dan levenshtein, perhatikan contoh di bawah ini!

<?PHP 
    $s1="String pertama";
    $s2="String kedua";
    echo("Similar_text : ".similar_text($s1, $s2)."<BR />");
    echo("Levenshtein : ".levenshtein($s1, $s2)."<BR />");
?>