cloud-hosting-terbaik-indonesia

Tutorial Belajar PHP Part 22: Pengertian dan Jenis-jenis Operator Logika dalam PHP

Posted on

Operator logika digunakan bagi membandingkan 2 inputan kondisi boolean, yakni true atau false. Pada panduan kali ini kita akan membahas mengenai jenis dan cara penggunaan operator logika (Logical Operators) dalam PHP, serta memahami pengertian prinsip short-circuit pada operasi logika PHP.


Pengertian Operator Logika pada PHP

Operator Logika yaitu operator yang digunakan bagi membandingkan 2 kondisi logika, yaitu logika benar (TRUE) dan logika salah (FALSE). Operator logika sering digunakan bagi kodisi IF, atau bagi keluar dari proses perulangan (looping).

Jenis operand pada operator logika ini yaitu variabel dengan tipe boolean. Namun bila operand bukan boolean, akan “dikonversi” menjadi boolean oleh PHP (aturan “konversi” ini telah kita bahas di panduan mengenai tipe data boolean PHP).


Jenis-jenis Operator Logika pada PHP

Jenis-jenis operator logika pada PHP dapat dilihat dari tabel berikut:

Perbedaan dari operator AND dengan , dan OR dengan || terkait dengan cara penulisan dan aturan “kekuatan” operator. Operator dan || mempunyai “kekuatan” lebih tinggi dari di AND dan OR, sehingga baris petunjuk: $a AND $b || $c, akan dieksekusi oleh PHP menjadi $a AND ($b || $c).

Dari tabel diatas, saya hanya memberikan hasil bagi kondisi TRUE, karenanya selain kondisi tersebut, hasilnya yaitu FALSE.


Cara Pemakaian Operator Logika di pada PHP

Berikut yaitu contoh kode program, cara pemakaian operator logika pada PHP:

Saya akan membahas kode program diatas:

Di baris 2, operasi logika yang dijalankan yaitu $hasil1 = true and false, yang harusnya $hasil1 akan bernilai false (menurut prinsip operator and: bila diantara saja ada yang false, karenanya hasilnya yaitu false)

Namun seperti yang terlihat pada tampilan ketika program dijalankan, variabel $hasil1 bernilai true!. Apa yang hakekatnya terjadi? Hal ini kembali kepada prinsip urutan prioritas operator.

Apabila kamu perhatikan tabel urutan operator di tutorial urutan operator dalam PHP, operator assignment (pendefenisian variabel) yaitu menggunakan tanda sama dengan (=) mempunyai priotitas lebih tinggi dari di operator logika and. Sehingga yang hakekatnya diproses yaitu ($hasil1 = true) and false, sehingga $hasil1 akan bernilai true.

Kesalahan pemograman seperti ini akan sulit dideteksi, sehingga kamu disarankan menggunakan tanda kurung bagi menegaskan urutan program.

Di baris ke-6, bagi variabel $hasil2 saya mengulangi operasi yang sama dengan baris 2, namun kali ini dengan menggunakan tanda kurung bagi memberitahukan kepada PHP bahwa operasi logikalah yang mesti dijalankan pertama-tama kali, baru setelah itu proses assigment yang kali ini berjalan dari yang harusnya (true and false menghasilkan false). Dan variabel $hasil2 bernilai false.

Di baris ke-10, variabel $hasil3 bernilai true, karena operator xor akan menghasilkan true apabila diantara operand bernilai true.

Bagi baris ke-14, $hasil4 = (false or true false), urutan proses operasi dimulai terlebih dahulu di operator karena mempunyai urutan prioritas lebih tinggi daripada operator or, sehingga yag diproses oleh PHP yaitu (false or (true false)), dan menghasilkan nilai false.

Di contoh terakhir baris ke-20, operator || akan diproses terlebih dahulu, sehingga persamaanya menjadi $hasil5 = ($a and ($b || $a) or b).

Pada membangun operasi logika ini, sedapat mungkin bagi mengujinya terlebih dahulu, karena kesalahan program di logika akan sulit terdeteksi.


Pengertian Prinsip Short Circuit pada operasi Logika PHP

PHP menjalankan operasi logika dengan prinsip short-circuit, yaitu bila dengan memeriksa satu petunjuk saja telah didapati hasil logikanya, karenanya petunjuk lain tak akan dijalankan. Contohnya:

Apabila di ketika program dijalankan $a telah bernilai FALSE, karenanya variabel $b, $c dan $d tak akan diperiksa lagi, karena apapun nilai variabel tersebut, hasilnya akan tetap FALSE.

Hal ini akan bermanfaat bagi kasus-kasus tertentu, seperti contoh berikut:

Guna exit() pada kode PHP tersebut (yang akan membangun program PHP berhenti diproses) tak akan dijalankan dalam kurun waktu fopen($filename) bernilai true. Guna short-circuit ini sering digunakan pada contoh-contoh program PHP.


Pada panduan ini kita telah mempelajari operator logika dalam PHP, bagi berikutnya kita akan membahas operator perbandingan.


Sumber https://www.duniailkom.com/