ความแตกต่างระหว่างhide()และunset()คืออะไร? ฉันต้องการซ่อนองค์ประกอบบางอย่างฉันพบhide()และunset()แต่ฉันไม่รู้ว่าควรใช้องค์ประกอบใด
ความแตกต่างระหว่างhide()และunset()คืออะไร? ฉันต้องการซ่อนองค์ประกอบบางอย่างฉันพบhide()และunset()แต่ฉันไม่รู้ว่าควรใช้องค์ประกอบใด
คำตอบ:
hide()และunset() ไม่เหมือนกัน hide () เป็นฟังก์ชัน Drupal และ unset () เป็นฟังก์ชัน php แบบ raw
unset()เพียงแค่ทำลายตัวแปร ตัวอย่างเช่น
<?php
$name = 'Drupal';
unset($name);
print $name; // this will result an error as $name is no longer set. `isset()` will return FALSE.
hide()ไม่ทำลายตัวแปร มันมีประโยชน์ที่จะทำเครื่องหมายบางอาร์เรย์ทำให้สามารถมีการแสดงอยู่แล้วดังนั้นมันจะไม่ได้รับการแสดงผลอีกครั้ง
มันเป็นเพียงการเพิ่ม / แทนที่อาร์กิวเมนต์ที่กำหนดคือ#printedเพื่อให้ TRUE drupal_renderหรือrender()จะไม่ดำเนินการฟังก์ชั่นรูปแบบอีกครั้ง - แทนมันจะใช้เวอร์ชันแคชถ้ามี
ตัวอย่างการใช้งานกรณีของhide()การซ่อนฟอร์มความคิดเห็นในเทมเพลตโหนดและแสดงที่อื่นในเทมเพลต คุณจะพบว่ามีประโยชน์เมื่อแก้ไขหน้าหรือบล็อก อย่าไม่ unset()เรนเดอาร์เรย์ถ้าคุณต้องการที่จะใช้ที่อื่น
หากคุณต้องการที่จะซ่อนองค์ประกอบแบบฟอร์มบางอย่างจากผู้ใช้ แต่ยังคงต้องการที่จะให้โครงสร้างรูปแบบการตั้งค่าขององค์ประกอบที่จะ#accessFALSE