ความแตกต่างระหว่าง render () และ drupal_render () คืออะไร


26

ความแตกต่างระหว่างrender()และdrupal_render()ต่อไปคืออะไร? มีเหตุผลที่จะใช้ drupal_render () เท่านั้นหรือไม่

คำตอบ:


31

เอกสารสำหรับrender()อธิบายมันค่อนข้างดี:

ฟังก์ชั่นนี้ทำให้องค์ประกอบใช้ drupal_render () องค์ประกอบระดับบนสุดจะแสดงด้วย show () ก่อนการเรนเดอร์ดังนั้นมันจะถูกเรนเดอร์เสมอแม้ว่า hide () จะถูกใช้ก่อนหน้านี้แล้ว

render()เป็นเพียงเสื้อคลุมสำหรับยกเว้นว่าจะทำให้แน่ใจว่าองค์ประกอบที่ส่งผ่านเป็นชุดที่จะแสดงเมื่อส่งผ่านไปยังdrupal_render()drupal_render()

นอกจากนี้ยังทำให้แน่ใจว่าองค์ประกอบที่ส่งผ่านเป็นอาร์เรย์ (ซึ่งทุกคนdrupal_render()สามารถยอมรับได้) หากไม่เป็นเช่นนั้นองค์ประกอบจะถูกส่งคืนตามสภาพเดิม ดังนั้นจึงให้ความปลอดภัยเล็กน้อยหากคุณต้องการ

หากด้วยเหตุผลใดก็ตามที่คุณมีตัวแปรที่คุณต้องการแสดงผลและคุณไม่รู้ว่ามันเป็นสตริงหรืออาร์เรย์การเรนเดอร์คุณสามารถส่งผ่านไปได้render()โดยไม่ต้องทดสอบตัวแปรด้วยตัวเอง

สำหรับตัวอย่างจริงของสถานการณ์แบบนั้นมีรายการการโทรติดต่อที่render()คุณสามารถตรวจสอบได้

โดยการใช้ไซต์ของเรา หมายความว่าคุณได้อ่านและทำความเข้าใจนโยบายคุกกี้และนโยบายความเป็นส่วนตัวของเราแล้ว
Licensed under cc by-sa 3.0 with attribution required.