it-swarm.com.de

Was ist der Unterschied zwischen render () und drupal_render ()?

was ist der Unterschied zwischen render() und drupal_render() überhaupt? Gibt es einen Grund, nur drupal_render () zu verwenden?

26
Pan Chrono

Die Dokumente für render() erklären es ziemlich gut:

Diese Funktion rendert ein Element mit drupal_render (). Das Element der obersten Ebene wird vor dem Rendern mit show () angezeigt, sodass es immer gerendert wird, auch wenn hide () zuvor darauf verwendet wurde.

render() ist im Grunde nur ein Wrapper für drupal_render(), außer dass sichergestellt wird, dass das übergebene Element so angezeigt wird, dass es angezeigt wird, wenn es an drupal_render() übergeben wird.

Es stellt auch sicher, dass das übergebene Element ein Array ist (was alles drupal_render() akzeptieren kann). Ist dies nicht der Fall, wird das Element unverändert zurückgegeben. Wenn Sie möchten, bietet es also ein kleines Sicherheitsnetz.

Wenn Sie aus irgendeinem Grund eine Variable haben, die Sie rendern müssen, und Sie nicht wissen, ob es sich um eine Zeichenfolge oder ein Render-Array handelt, können Sie diese direkt durch render() übergeben, ohne den Variablentyp selbst testen zu müssen.

Für einige Beispiele aus der Praxis für diese Art von Situation gibt es eine Liste der Aufrufe von render() , die Sie durchsehen können.

31
Clive