มีสามวิธีในการรับค่าเอนทิตีตัวอย่างเช่นชนิดเนื้อหาโหนด
$node->type->value$node->getType()$node->get('type')
ฉันควรใช้อันไหนดี
มีสามวิธีในการรับค่าเอนทิตีตัวอย่างเช่นชนิดเนื้อหาโหนด
$node->type->value$node->getType()$node->get('type')ฉันควรใช้อันไหนดี
คำตอบ:
หากมีวิธีการเฉพาะ - สำหรับ$node->getType()- ฉันขอแนะนำให้ใช้วิธีนี้ เห็นได้ชัดว่ามันไม่เคยเกิดขึ้นกับสิ่งต่าง ๆ ที่มีชีวิตชีวาเช่นทุ่งนาเพราะนั่น$node->type->valueจะเป็นคำแนะนำ
แก้ไข: $node->get('type')เป็นเพียงตัวแปร verbose เพิ่มเติม$node->type- ทั้งคุณได้รับวัตถุฟิลด์ "ประเภท"
วิธีการที่เฉพาะเจาะจง IMO เป็นที่ต้องการอยู่เสมอเพราะ@returnพิมพ์สี คุณไม่สามารถจริงๆ typehint get('foo')การกลับมาของการ และเวทย์มนตร์จะช้าลงเรื่อย ๆ และยังไม่เป็นที่รู้จักของ IDEs เกี่ยวกับสิ่งที่ส่งคืน (โปรดทราบว่าทุกครั้งที่เรากำลังพูดถึง IDEs เรากำลังพูดถึงข้อบกพร่องที่เป็นไปได้เช่นกันไม่ใช่แค่ IDE แต่โปรแกรมเมอร์ไม่มีความรู้เกี่ยวกับสิ่งที่อยู่ในตัวแปร)