Pengendali Ternary dalam PHP
Katakan kita mempunyai kod berikut yang menyemak
sama ada pengguna sudah berumur 18 tahun atau tidak:
<?php
$age = 17;
if ($age >= 18) {
$adult = true;
} else {
$adult = false;
}
var_dump($adult);
?>
Seperti yang anda lihat, konstruksi if-else
hanya diperlukan untuk menulis nilai tertentu
ke dalam pembolehubah $adult. Untuk
tugas sedemikian, apabila dalam keadaan kita hanya
menulis satu pembolehubah, terdapat
penyelesaian yang lebih pendek melalui apa yang dipanggil
pengendali ternary.
Sintaksnya adalah seperti berikut:
<?php
variable = condition ? value1 : value2;
?>
Pengendali berfungsi seperti berikut: jika keadaan adalah benar,
maka value1 dikembalikan, sebaliknya
- value2. Mari kita tulis semula
kod yang diberikan pada awal pelajaran menggunakan
pengendali ternary:
<?php
$age = 17;
$adult = $age >= 18 ? true: false;
var_dump($adult);
?>
Anda juga, boleh terus outputkan hasilnya
melalui var_dump tanpa menulisnya ke dalam pembolehubah:
<?php
$age = 17;
var_dump( $age >= 18 ? true: false );
?>
Pengendali ternary hanya patut digunakan dalam kes yang paling mudah, kerana penggunaannya menyukarkan pemahaman kod.
Katakan diberikan pembolehubah $num, yang
boleh menjadi sama ada negatif atau positif.
Tulis ke dalam pembolehubah $res nombor
1, jika pembolehubah $num lebih besar
atau sama dengan sifar, dan nombor -1, jika pembolehubah
$num kurang daripada sifar.