ก่อนหน้าที่จะมี PHP 8.0 เวลาที่เราต้องการเข้าถึง Method หรือ Property ของ Object ที่ร้อยเรียงกันเป็นทอด ๆ (Chaining) ยิ่งถ้าข้อมูลนั้นมาจาก Database หรือ API ที่มีโอกาสเป็น null เราจะต้องเขียนโค้ดตรวจสอบกันอย่างยาวเหยียดเพื่อความปลอดภัย
ตัวอย่างโค้ดแบบเดิม
PHP
PHP
// สมมติว่าเราต้องการชื่อประเทศของผู้ใช้งาน
$country = null;
if ($user !== null) {
$profile = $user->getProfile();
if ($profile !== null) {
$address = $profile->getAddress();
if ($address !== null) {
$country = $address->country;
}
}
}