PHP: Operator Perbandingan

Monday, 6 September 2021

PHP: Operator Perbandingan

Halo teman-teman, apa kabarnya hari ini? semoga selalu dalam kondisi yang baik.

Di postingan sebelumnya mengenai PHP, saya sudah membahas mengenai Operator Aritmatika di PHP. Silahkan dilihat-lihat sejenak untuk memahami lagi.

Kita akan lanjut dengan pembahasan mengenai Operator Perbandingan. Pastikan juga teman-teman sudah paham mengenai Variabel di PHP.

Mengenal Operator Perbandingan

Dari namanya, kita bisa ambil kesimpulan jika nanti akan ada yang dibandingkan.

Operator ini bertujuan “membandingkan” dua nilai, kemudian akan menghasilkan nilai “benar (true)” atau “salah (false)”.

Contoh sederhanya gini. Kita punya dua variabel dengan nama $a dan $b.

  • Variabel $a memiliki nilai 2
  • Variabel $b memiliki nilai 5

🐶 Pertanyaan:

Apakah $a sama dengan $b ?

🐶 Berarti:

Apakah 2 sama dengan 5 ?

🐶 Jawabannya: Salah

Jenis Operator Perbandingan

Ada beberapa tanda sebagai operator untuk membandingkan nilai, kita bisa lihat di tabel berikut:

Operator Nama Operator
== Sama dengan
=== Sama/identik dengan
!= Tidak sama dengan
!== Tidak sama/identik dengan
< Kurang dari
> Lebih dari
<= Kurang dari atau sama dengan
>= Lebih dari atau sama dengan

Contoh Penggunaan

Anggap saja kita punya dua variabel seperti contoh diatas, yaitu $a = 2 dan $b = 5. Kemudian kita bandingkan menggunakan operator.

$a == $b (“variabel a” sama dengan “variabel b” ) adalah salah, karena 2 tidak sama dengan 5, berarti FALSE

$a < $b (“variabel a” kurang dari “variabel b”) adalah benar, karena 2 kurang dari 5, berarti TRUE

🐰 : “Sampai sini paham? Kalo sudah, mari kita lanjut..”

Jika kita perhatikan, ada tanda == (sama dengan) dan juga === (sama/identik dengan).

🐔 : “Ada bedanya kah? Perasaan sama aja sebutannya..”

Sebelum kita bahas, saya harap teman-teman sudah mengerti atau setidaknya sudah cari tau mengenai “Tipe Data”, saya juga pernah membahasnya di sini PHP: Variabel dan Tipe Data.

Perbedaan == dan === adalah nilai dan tipe data yang dibandingkan.

Jika == membandingan nilai, maka === membandingan nilai serta tipe data.

Contoh:

Ada variabel $x dan $y yang memiliki nilai 2.

Namun ketika dibandingkan, hasilnya akan seperti ini:

  • $x == $y menghasilkan nilai TRUE
  • $x === $y menghasilkan nilai FALSE

🙀 : “Kenapa bisa?”

— Sederhananya gini..

Kalau pake == berarti: Apakah 2 sama dengan "2"? jawabannya pasti benar karena sama isinya. Tapi berbeda dengan === yang berarti: Apakah 2 (Integer) sama dengan "2" (String)? tentu jawabannya salah karena berbeda tipe data walaupun isinya sama.

Contoh pada dunia nyata:

Sama saja seperti air tawar dan air garam. Kalo pake == berarti benar/true karena sama-sama air. Beda lagi kalo pake === akan salah/false karena beda rasa walaupun sama-sama air.

🦒 : “Paham sampe sini? Kalo iya, kita lanjut..”

Tanda != dan !== adalah kebalikan dari == dan ===.

Contohnya kita pake nilai sama seperti sebelumnya, ada variabel $x = 2 dan $y = "2".

Penggunaan:

  • $x != $y menghasilkan nilai FALSE
  • $x !== $y menghasilkan nilai TRUE

🐲 : “Bisa gitu ya..”

🦕 : “Ya.. kan kebalikan dari tanda sebelumnya..”

Bisa kita baca seperti ini:

  • Apakah nilai $x tidak sama dengan $y ? atau Apakah 2 tidak sama dengan "2" ?. Jawabannya adalah FALSE karena sama nilainya yaitu 2.

  • Apakah nilai dan tipe data $x tidak sama dengan $y ? atau Apakah 2 (Integer) tidak sama dengan "2"(String) ?. Jawabannya adalah TRUE karena berbeda tipe data walau sama nilainya.

🦩 : “Bisa dimengerti sampe sini?”

Contoh dunia nyata bisa pake contoh sebelumya diatas, tinggal kebalikannya aja.

Air Tawar tidak sama dengan Air Asin adalah Salah/False karena sama-sama air. Beda lagi kalau Jenis/Tipe Air Tawar tidak sama dengan Air Asin adalah Benar/True. Walaupun sama-sama air, tapi keduanya berbeda jenis/tipe.

🐰 : “Kalo tulis di PHP gimana?”

Penggunaannya nanti pada saat ada sebuah kondisi. Akan saya bahas di postingan lain.

Untuk tanda lain, saya rasa tidak terlalu sulit, karena lebih familiar/tidak asing dalam penggunaan secara umum.

— okeh cukup..

Ada pertanyaan? atau mungkin ada bagian yang tidak jelas? Silahkan tanyakan atau mungkin ada saran, dipersilahkan.