eval в smarty/codeigniter

Я пытаюсь использовать одну из функций CodeIgniter со smarty, имя переменной — Dynamic.

обычно функция вызывается так:

{set_value(aaa, $f_aaa} <br>

но в моем коде aaa заменено динамическим значением

первая часть проста:

{set_value($row->Field, $f_aaa} <br>

но я не знаю, как использовать eval в smarty для этой ситуации.

он должен вызывать функцию с циклом (например, со следующим вводом/переменной)

{set_value(name, $f_name} 

{set_value(address, $f_address} 

редактировать: я забыл сказать, что встроенная функция PHP eval не работает внутри smarty.. она показывает следующую ошибку:

unknown function "eval"' 

person user861587    schedule 10.09.2011    source источник
comment
Почему ты используешь смарт? Просто используйте обычные представления CI, вы можете использовать прямой PHP-код без этого eval() обезьяньего дела. И это также будет быстрее, с небольшим влиянием на удобочитаемость.   -  person NullUserException    schedule 10.09.2011


Ответы (3)


eval не является функцией - это языковая конструкция, и ее нельзя вызывать так, как smarty вызывает обычные функции.

person dev-null-dweller    schedule 10.09.2011

Если вы хотите использовать CI-помощник внутри Smarty, взгляните на этот плагин Smarty.

https://github.com/fadillzzz/Smarty-CI-Helper/

Это даст вам возможность вызывать любые вспомогательные функции CI из шаблонов Smarty, используя синтаксис Smarty.

person Kemal Fadillah    schedule 11.09.2011

использовали ли вы тег {php}.

person Vamsi Krishna B    schedule 10.09.2011