Operasi Logik dalam PHP
Mari kita lihat kod berikut:
<?php
$a = 1;
$b = 2;
if ($a == $b) {
var_dump(true);
} else {
var_dump(false);
}
?>
Seperti yang anda lihat, dalam kod ini
perbandingan pembolehubah a dan b
dilakukan, dan jika ia sama, maka
true akan dipaparkan ke konsol,
dan jika tidak sama - maka false.
Di sini tiba masanya untuk mendedahkan kepada anda
satu perkara yang tidak begitu jelas: sebenarnya
konstruksi if bukanlah wajib untuk perbandingan
- operator itu sendiri seperti ==, ===, !=, <, > dan
lain-lain mengembalikan sama ada true,
ataupun false sebagai hasilnya.
Lihat contoh:
<?php
var_dump(1 == 1); // akan memaparkan true
var_dump(1 == 2); // akan memaparkan false
?>
Berdasarkan apa yang ditulis, kod dari awal pelajaran boleh ditulis semula dengan cara yang lebih mudah:
<?php
$a = 1;
$b = 2;
var_dump($a == $b);
?>
Anda boleh tidak memaparkan hasilnya serta-merta, tetapi memberikan hasilnya kepada beberapa pembolehubah:
<?php
$a = 1;
$b = 2;
$res = $a == $b;
var_dump($res);
?>
Andaikan diberikan pembolehubah berikut:
<?php
$a = 2 * (3 - 1);
$b = 6 - 2;
?>
Dengan menggunakan operator ==, ketahui sama ada
nilai pembolehubah ini sama atau tidak.
Andaikan diberikan pembolehubah berikut:
<?php
$a = 5 * (7 - 4);
$b = 1 + 2 + 7;
?>
Dengan menggunakan operator >, ketahui sama ada
pembolehubah $a lebih besar daripada $b.
Andaikan diberikan pembolehubah berikut:
<?php
$a = 2 ** 4;
$b = 4 ** 2;
?>
Dengan menggunakan operator !=, ketahui sama ada
nilai pembolehubah ini berbeza atau tidak.