Pregunta

No puedo encontrar la solución de aplicar modificadores dinámicamente en Smarty.

Plantilla: me gustaría trabajar de esta manera (ejemplo)

{$myVariable|$modifiers}

Script php

$smarty->assign('myVariable', "brumla brumla na drum drum drum");
$smarty->assign('modifiers', "truncate:30|trim");

O me gustaría aplicar modificadores en PHP: ¿hay algún método para analizar y aplicar modificadores en PHP?

Gracias por las respuestas.

¿Fue útil?

Solución

Cada modificador de Smarty se llama realmente la función PHP smarty_modifier_$ Nombre(). Esta función puede llamarse como cualquier otra.

Entonces, en ese código de ejemplo, simplemente harías:

<?php
$myVariable = "brumla brumla na drum drum drum";
$myVariable = smarty_modifier_truncate($myVariable, 30);
$myVariable = smarty_modifier_trim($myVariable);
$smarty->assign('myVariable', $myVariable);

Por supuesto que puedes usar call_user_func () para hacerlo más dinámico.

Licenciado bajo: CC-BY-SA con atribución
No afiliado a StackOverflow
scroll top