strcmp() function PHP

strcmp() function berguna untuk membandingkan dua buah string (case sensitive).

Syntax

int strcmp(string $str1, string $str2)

Parameter

Parameter Penjelasan
str1 Parameter ini wajib ada. String pertama.
str2 Parameter ini wajib ada. String kedua.

Catatan

strcmp() function merupakan binary safe dan case sensitive atau memperlakukan huruf besar dan kecil dengan berbeda (ABC berbeda dengan abc).

strcmp() function membandingkan string berdasarkan urutan character di dalam character set ASCII. Contoh, huruf a memiliki nomor urut 97 dan c memiliki nomor urut 99 sehingga huruf c lebih besar daripada huruf a. Lihat daftar character di dalam ASCII pada table ASCII.

Jika strcmp() function berhasil dijalankan maka akan menghasilkan tiga jenis nilai, yaitu:

  • 0. Jika kedua string sama.
  • <0. Jika str1 lebih kecil dari str2
  • >0. Jika str1 lebih besar dari str2

Contoh

Jika dua buah string yang dibandingkan memiliki panjang yang sama maka strcmp() bisa menghasilkan tiga jenis nilai, yaitu:

  • 0. str1 sama dengan str2.
  • -1. str1 lebih kecil dari str2.
  • 1. str1 lebih besar dari str2.

Code PHP 1:

<?php
$diff = strcmp("a", "c");
echo "$diff";
?>

Hasil running code di atas bila dilihat melalui page source browser akan tampak sebagai berikut ini:

-1

Pada contoh di atas, kedua string memiliki panjang yang sama.

strcmp() function membandingkan string berdasarkan per character. Jika character pertama dari kedua string memiliki nilai sama baru kemudian character berikutnya yang dibandingkan. Perhatikan contoh berikut ini:

Code PHP 2:

<?php
$diff = strcmp("ac", "ab");
echo "$diff";
?>

Hasil running code di atas bila dilihat melalui page source browser akan tampak sebagai berikut ini:

1

Pada contoh di atas, kedua string memiliki character pertama yang sama yaitu huruf a sehingga character pertama pada kedua buah string tersebut tidak dihitung.

Jika kedua buah string yang dibandingkan memiliki beberapa character yang sama namun satu string berisi lebih banyak character maka perbedaan jumlah character itulah yang dihasilkan oleh strcmp() function. Perhatikan contoh berikut ini:

Code PHP 3:

<?php
$diff = strcmp("ab", "abcde");
echo "$diff";
?>

Hasil running code di atas bila dilihat melalui page source browser akan tampak sebagai berikut ini:

-3

Pada contoh di atas, kedua buah string memiliki character yang sama yaitu ab, namun string kedua memiliki 3 character lebih banyak.

Lihat function lainnya:

  • strcasecmp() – Membandingkan dua buah string (case insensitive).
  • strncmp() – Membandingkan n character pertama dari dua buah string (case sensitive).
  • strncasecmp() – Membandingkan n character pertama dari dua buah string (case insensitive).
  • strnatcmp() – Membandingkan dua buah string berdasarkan perhitungan normal matematika (case sensitive).
  • strnatcasecmp() – Membandingkan dua buah string berdasarkan perhitungan normal matematika (case insensitive).
  • strcoll() – Membandingkan dua buah string berdasarkan format locale (case sensitive).
  • substr_compare() – Membandingkan sebagian dari string pertama (substring) dengan string kedua.

Leave a Reply

Your email address will not be published. Required fields are marked *

You may use these HTML tags and attributes: <a href="" title=""> <abbr title=""> <acronym title=""> <b> <blockquote cite=""> <cite> <code> <del datetime=""> <em> <i> <q cite=""> <strike> <strong>