Operator Ternary di PHP
Misalkan kita memiliki kode berikut yang memeriksa
apakah pengguna sudah berusia 18 tahun atau belum:
<?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 variabel $adult. Untuk
tugas-tugas seperti ini, di mana dalam kondisi hanya terjadi
penulisan satu variabel, terdapat
solusi yang lebih pendek melalui yang disebut
operator ternary.
Sintaksnya adalah sebagai berikut:
<?php
variable = condition ? value1 : value2;
?>
Cara kerja operator ini: jika kondisi benar,
maka value1 yang dikembalikan,
sebaliknya - value2. Mari kita tulis ulang
kode yang diberikan di awal pelajaran menggunakan
operator ternary:
<?php
$age = 17;
$adult = $age >= 18 ? true: false;
var_dump($adult);
?>
Bisa juga, hasilnya tidak perlu ditulis ke dalam
variabel, tetapi langsung ditampilkan melalui var_dump:
<?php
$age = 17;
var_dump( $age >= 18 ? true: false );
?>
Operator ternary sebaiknya digunakan hanya dalam kasus-kasus yang paling sederhana, karena penggunaannya dapat menyulitkan pemahaman kode.
Misalkan diberikan variabel $num, yang
dapat berupa negatif atau positif.
Tuliskan ke dalam variabel $res angka
1, jika variabel $num lebih besar
atau sama dengan nol, dan angka -1, jika variabel
$num kurang dari nol.