qual'è la differenza tra render()
e drupal_render()
comunque? C'è un motivo per usare solo drupal_render ()?
qual'è la differenza tra render()
e drupal_render()
comunque? C'è un motivo per usare solo drupal_render ()?
Risposte:
I documenti per render()
spiegarlo abbastanza bene:
Questa funzione esegue il rendering di un elemento utilizzando drupal_render (). L'elemento di livello superiore viene mostrato con show () prima del rendering, quindi verrà sempre visualizzato anche se hide () era stato precedentemente utilizzato su di esso.
render()
è fondamentalmente solo un wrapper per drupal_render()
, tranne per il fatto che si assicura che l'elemento passato sia impostato per essere mostrato quando passato a drupal_render()
.
Inoltre, assicura che l'elemento passato sia un array (che è tutto drupal_render()
può accettare). In caso contrario, l'elemento viene restituito così com'è. Quindi, se vuoi, ti fornisce un po 'di rete di sicurezza.
Se per qualsiasi motivo hai una variabile che devi renderizzare e non sai se si tratta di una stringa o di una matrice di rendering, puoi passarla direttamente render()
senza dover testare tu stesso il tipo di variabile.
Per alcuni esempi del mondo reale di quel tipo di situazione c'è un elenco di chiamaterender()
che puoi consultare.