2016-04-04 3 views
0

я хочу знать, как я могу передать переменную в функцию, которая я Регистрируясь в качестве плагина с registerPlugin() функция Smarty PHPSmarty PHP: как передать переменную в функции registerPlugin

, как я делаю.

я есть smarty_get_data функцию

function smarty_get_data($params, Smarty_Internal_Template $template) 
{ 
    // trying to use passed variable 
    echo 'passed var :: '.$params['doma']; 
} 

переменную, которую я хочу передать

$doma = 'test var'; 

регистр, как плагин в

$smarty->registerPlugin('function', 'get_data', 'smarty_get_data', false, array('doma' => $doma)); 

выход пустой

принят var:

поэтому вам нужна помощь, что вы делаете неправильно!

ответ

0

Вы не можете передать $doma в функцию registerPlugin. Вам нужно передать его, когда вызывается функция get_data (в шаблоне).

Первый зарегистрировать плагин:

$smarty->registerPlugin('function', 'get_data', 'smarty_get_data', false); 

Затем в шаблоне вызова зарегистрированной функции с данными:

{get_data doma="some text"} 

Также, пожалуйста, проверьте документацию функции здесь: http://www.smarty.net/docs/en/api.register.plugin.tpl

Смежные вопросы