Ich muss eine PHP-Funktion innerhalb einer Vorlage TWIG aufrufen. Wie und wo füge ich diese Funktion ein? Hier mein Beispiel: Mein Controller ist:Symfony2 und Twig: Wie und wo füge ich eine PHP-Funktion zur Verwendung in TWIG ein?
namespace BackendBundle\Controller;
use Symfony\Component\HttpFoundation\Request;
use Symfony\Bundle\FrameworkBundle\Controller\Controller;
use BackendBundle\Entity\Comisiones;
use BackendBundle\Entity\Liquidaciones;
use BackendBundle\Form\ComisionesType;
use BackendBundle\Form\LiquidacionesType;
/**
* Comisiones controller.
*
*/
class ComisionesController extends Controller
{
/**
* Lists all Comisiones entities.
*
*/
public function indexAction()
{
$twig = new Twig_Environment($loader);
$function = new Twig_SimpleFunction("decir_hola", function() {
$saludo='Hola!';
return $saludo;
});
$em = $this->getDoctrine()->getManager();
$comisiones = $em->getRepository('BackendBundle:Comisiones')->findComisio();
return $this->render('comisiones/index.html.twig', array(
'comisiones' => $comisiones,
));
}
Mein Zweig Vorlage:
{% block body %}
{{decir_hola()}}
{% endblock %}
Aber ich bekomme diese Fehlermeldung:
Versuchte Klasse "Twig_Environment" von Namensraum zu laden "BackendBundle \ Controller". Haben Sie eine Anweisung "use" für einen anderen Namespace vergessen?
Was fehlt?
Vielen Dank für Ihre schnelle Antwort! Ich bin ein Anfänger mit Twig und Symfony2. Ich kannte den Artikel nicht, der mir sagt. Ich werde es sofort lesen –