Apa perbedaan antara fungsi hide () dan unset ()?

9

Apa perbedaan antara hide()dan unset()? Saya ingin menyembunyikan beberapa elemen, saya menemukan hide()dan unset(), tetapi saya tidak tahu mana yang harus saya gunakan.

Brian
sumber

Jawaban:

19

hide()dan unset() tidak sama. hide () adalah fungsi Drupal dan unset () adalah fungsi php mentah.

unset()hanya menghancurkan suatu variabel. Sebagai contoh,

<?php
$name = 'Drupal';
unset($name);
print $name; // this will result an error as $name is no longer set. `isset()` will return FALSE. 

hide()TIDAK menghancurkan variabel. Ini berguna untuk menandai beberapa array yang mampu-render telah dirender sehingga tidak akan di- render lagi .

itu hanya menambah / mengganti argumen yang diberikan #printeduntuk BENAR sehingga drupal_renderatau render()tidak akan menjalankan fungsi tema lagi - sebagai gantinya, itu akan menggunakan versi cache jika tersedia .

Contoh penggunaan contoh hide()adalah dengan menyembunyikan formulir komentar di templat simpul dan menunjukkannya di tempat lain di templat tersebut. Anda juga akan merasakan manfaatnya ketika mengubah halaman atau blok. Apakah TIDAK unset() render array yang jika Anda ingin menggunakannya di tempat lain.

Jika Anda ingin menyembunyikan beberapa elemen formulir tertentu dari pengguna tetapi tetap ingin mempertahankan struktur formulir, setel #accesselemen ke FALSE.

menyembunyikan()

drupal_render ()

tidak disetel ()

AyeshK
sumber