ตัวดำเนินการรวมกับ null ใน PHP
พิจารณารหัสต่อไปนี้:
<?php
if (isset($arr['test'])) {
$elem = $arr['test'];
} else {
$elem = 'empty';
}
?>
รหัสนี้สามารถเขียนใหม่โดยใช้ ตัวดำเนินการสามส่วน:
<?php
$elem = isset($arr['test']) ? $arr['test'] : 'empty';
?>
อย่างไรก็ตาม ทั้งรุ่นแรกและรุ่นที่สองของโค้ด
ทำให้เกิดความไม่สะดวกบางประการ เพื่อทำให้
โครงสร้างดังกล่าวง่ายขึ้น จึงได้มีการคิดค้น
ตัวดำเนินการรวมกับ null ซึ่ง
แสดงด้วยคำสั่ง ?? ลองเขียนโค้ดของเรา
ใหม่ด้วยตัวดำเนินการนี้:
<?php
$elem = $arr['test'] ?? 'empty';
?>
เขียนโค้ดต่อไปนี้ใหม่โดยใช้ ตัวดำเนินการที่ศึกษา:
<?php
$user = ['name' => 'john', 'age' => 30];
if (isset($user['name'])) {
$name = $user['name'];
} else {
$name = 'unknown';
}
?>