เมื่อคุณเข้าถึงฟิลด์ด้วยวิธีเวทมนต์ คุณไม่จำเป็นต้องตรวจสอบการมีอยู่ของฟิลด์เหล่านั้นโดยใช้ hasField()
กระบวนการ.:
$entity->field_that_does_not_exist->entity; // โมฆะ.
$entity->get('field_that_does_not_exist'); // ข้อยกเว้น
$entity->get('field_that_does_not_exist')->เอนทิตี; // ข้อยกเว้น
โดยใช้ $entity->field_intro_teaser_image_media_->เอนทิตี
ก็เพียงพอแล้วในกรณีนี้ หากไม่มีฟิลด์ นิพจน์จะเป็นแบบง่ายๆ โมฆะ
โดยไม่มีข้อผิดพลาดใดๆ
แต่แน่นอนว่าคุณยังต้องตรวจสอบว่ามีการอ้างอิงหรือไม่ -> เอนทิตี
ไม่ใช่ โมฆะ
. ตัวดำเนินการ PHP 8.0 Null-safe อาจเป็นวิธีที่ทำได้ตามคำแนะนำ ไคลฟ์.
$media_field = $นิติบุคคล
->field_intro_teaser_image_media_
-> เอนทิตี
?->field_media_image
-> เอนทิตี
?->getFileUri();
ในกรณีที่ใช้ตัวดำเนินการ Null-safe การเข้าถึงฟิลด์เอนทิตีอาจเร็วกว่า -> รับ ()
เพื่อหลีกเลี่ยงตรรกะเพิ่มเติม
$media_field = $นิติบุคคล
->รับ('field_intro_teaser_image_media_')
?->นิติบุคคล
?->get('field_media_image')
?->นิติบุคคล
?->getFileUri();