Penjelasan Operator Logika di PHP

tutorial belajar PHP untuk pemula

Operator logika dipakai untuk membandingkan 2 inputan keadaan boolean, yaitu true atau false. Dalam tutorial saat ini kita akan membicarakan mengenai jenis dan cara pemakaian operator logika (Logical Operators) dalam PHP, serta memahami pengertian prinsip short-circuit dalam operasi logika PHP.

Pengertian Operator Logika di PHP

Operator Logika ialah operator yang dipakai untuk membandingkan 2 keadaan logika, yaitu logika betul (TRUE) dan logika salah (FALSE). Operator logika biasa dipakai untuk kodisi IF, atau untuk keluar dari proses perulangan (looping).

Jenis operand dalam operator logika ini merupakan variabel dengan tipe boolean. Tetapi bila operand bukan boolean, akan “dikonversi” jadi boolean oleh PHP (aturan “konversi” ini sudah kita bahas pada tutorial tentang tipe data boolean PHP).

Jenis-jenis Operator Logika dalam PHP

Jenis-jenis operator logika dalam PHP bisa dilihat dari tabel berikut:

tabel operator logika php

tabel operator logika php

Perbedaan dari operator AND dengan &&, dan OR dengan || terkait dengan metode penulisan dan aturan “kekuatan” operator. Operator && dan || mempunyai “kekuatan” lebih tinggi ketimbang AND dan OR, sehingga baris perintah: $a AND $b || $c, akan dieksekusi oleh PHP jadi $a AND ($b || $c).

Dari tabel diatas, saya cuma memberikan hasil untuk keadaan TRUE, maka selain keadaan itu, hasilnya ialah FALSE.

Cara Pemakaian Operator Logika di dalam PHP

Berikut ialah contoh kode program, cara pemakaian operator logika dalam PHP:

<?php
$hasil1 = true and false;
echo '$hasil1 = ';
echo var_dump($hasil1)."<br/>"; // $hasil1 = bool(true) 
$hasil2 = (true and false);
echo '$hasil2 = ';
echo var_dump($hasil2)."<br/>"; // $hasil2 = bool(false) 
$hasil3 = (true xor false);
echo '$hasil3 = ';
echo var_dump($hasil3)."<br/>"; // $hasil3 = bool(true) 
$hasil4 = (false or true && false);
echo '$hasil4 = ';
echo var_dump($hasil4)."<br/>"; // $hasil4 = bool(false) 
$a=true;
$b=false;
$hasil5 = ($a and $b || $a or b);
echo '$hasil5 = ';
echo var_dump($hasil5); // $hasil5 = bool(true)
?>

Saya akan mengulas kode program diatas:

Pada baris 2, operasi logika yang dijalankan ialah $hasil1 = true and false, yang mestinya $hasil1 akan bernilai false (berdasarkan prinsip operator and: bila salah satu saja ada yang false, maka hasilnya ialah false)

Tetapi seperti yang tampak dalam tampilan saat program dijalankan, variabel $hasil1 bernilai true!. Apa yang sebetulnya terjadi? Hal ini kembali kepada prinsip urutan prioritas operator.

Bila kamu perhatikan tabel urutan operator pada tutorial urutan operator dalam PHP, operator assignment (pendefenisian variabel) yaitu memakai tanda sama dengan (=) mempunyai priotitas lebih tinggi ketimbang operator logika and. Sehingga yang sebetulnya diproses ialah ($hasil1 = true) and false, sehingga $hasil1 akan bernilai true.

Kesalahan pemograman semacam ini akan susah diketahui, sehingga kamu dianjurkan memakai tanda kurung untuk menegaskan urutan program.

Pada baris ke-6, untuk variabel $hasil2 saya mengulangi operasi yang sama dengan baris 2, tetapi saat ini dengan memakai tanda kurung untuk memberitahukan kepada PHP bahwa operasi logikalah yang perlu dijalankan pertama kali, baru sesudah itu proses assigment yang saat ini berjalan sebagaimana mestinya (true and false menghasilkan false). Dan variabel $hasil2 bernilai false.

Pada baris ke-10, variabel $hasil3 bernilai true, sebab operator xor akan menghasilkan true jika salah satu operand bernilai true.

Untuk baris ke-14, $hasil4 = (false or true && false), urutan proses operasi dimulai terlebih dulu pada operator && sebab mempunyai urutan prioritas lebih tinggi ketimbang operator or, sehingga yag diproses oleh PHP ialah (false or (true && false)), dan menghasilkan nilai false.

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

Dalam membuat operasi logika ini, sebisa mungkin untuk mengujinya terlebih dulu, sebab kesalahan program pada logika akan susah terdeteksi.

Prinsip Short Circuit dalam operasi Logika PHP

PHP menjalankan operasi logika dengan prinsip short-circuit, yaitu bila dengan memeriksa satu perintah saja telah ditemukan hasil logikanya, maka perintah lain tak akan dijalankan. Misalnya:

$hasil = $a AND $b AND $c AND $d;

Bila di waktu program dijalankan $a telah bernilai FALSE, maka variabel $b, $c dan $d tak akan diperiksa lagi, sebab apapun nilai variabel itu, hasilnya akan tetap FALSE.

Hal ini akan berfungsi untuk kasus-kasus tertentu, seperti contoh berikut:

<?php
$result = fopen($filename) or exit();
?>

Fungsi exit() dalam kode PHP itu (yang akan membuat program PHP berhenti diproses) tak akan dijalankan selama fopen($filename) bernilai true. Fungsi short-circuit ini biasa dipakai dalam contoh-contoh aplikasi PHP.

Dalam tutorial ini kita sudah mempelajari operator logika dalam PHP, untuk berikutnya kita akan mengulas operator perbandingan.


Butuh Web Developer Makassar atau Jasa SEO di Makassar yang bergaransi? Jangan ragu dengan infanthree.com. Kami juga penyedia Jasa Pembuatan Aplikasi Android di Makassar yang terkemuka. Selain itu ada layanan SEM, SMM, Internet Marketing Agency Makassar dan Social Media, Pembuatan Logo, Konten, Video, Maskot dan Instalasi jaringan ataupun mikrotik, hingga pelatihan komputer dan internet marketing.

Recommended Posts

Tinggalkan Balasan

Alamat email Anda tidak akan dipublikasikan. Ruas yang wajib ditandai *