Réponses:
hide()
et unset
() ne sont pas identiques. hide () est une fonction Drupal et unset () est une fonction php brute.
unset()
détruit simplement une variable. À titre d'exemple,
<?php
$name = 'Drupal';
unset($name);
print $name; // this will result an error as $name is no longer set. `isset()` will return FALSE.
hide()
ne détruit PAS la variable. Il est utile de marquer qu'un tableau pouvant être rendu est déjà rendu afin qu'il ne soit pas rendu à nouveau .
il ajoute simplement / remplace l'argument donné est #printed
vrai , alors drupal_render
ou render()
ne sera pas exécuter les fonctions de thème à nouveau - à la place, il utilisera la version mise en cache si elle est disponible .
Un exemple d'utilisation hide()
serait de masquer le formulaire de commentaire dans un modèle de nœud et de l'afficher ailleurs dans le modèle. Vous le trouverez également utile lors de la modification de pages ou de blocs. N'utilisez PAS unset()
un tableau de rendu si vous souhaitez l'utiliser ailleurs.
Si vous souhaitez masquer un élément de formulaire spécifique à l'utilisateur tout en conservant la structure du formulaire, définissez #access
l'élément sur FALSE
.