Smarty, вывод ошибок и @

Mich

Продвинутый новичёк
Smarty, вывод ошибок и @

Необходимо вызвать Smarty-плагин (функцию), передав ей значение определенной переменной. Переменная может и не существовать, но предупреждений ессно быть не должно. Пробовал так, но не работает (и предупреждения есть и переменная НЕ передается):

{smartyFuncName myvar=@$foo.bar}

Как?
 

MajestiC

Пых
А ты пробовал в smartyFuncName проверять на isset? И где именно происходит warning? в smartyFuncName или где-то в другом месте?
 

Mich

Продвинутый новичёк
Smarty "компилирует" шаблон в PHP-код, там варнинг и генерится.
 

Serguitar

Новичок->продвинутый
Mich
А какой плагин вызывается? Твой собственный?
 

Mich

Продвинутый новичёк
Panchous
давай код - подправлю, мне не трудно.

Serguitar
При чем здесь вообще плагин?

-~{}~ 10.02.06 15:38:

Еще раз: нужно передать значение переменной в плагин Smarty. Переменная может не существовать. Тогда выводится стандартный PHP Warning о том, что переменная не объявлена. Как локально подавить вывод warning'а?
 

Mich

Продвинутый новичёк
Меня любить не надо.
Объясни мне тогда, пожалуйста, как ты пришел к выводу, что здесь дело в неправильно написанном плагине?
 

Mich

Продвинутый новичёк
> стандартные плагины работают без ворнингов
{mailto address=$notExistedVar}
Получаем:
> Undefined index: notExistedVar

На лицо недопонимание :) Мне надо, чтобы нотиса не было.
 

Mich

Продвинутый новичёк
Есть. Но Undefined index: notExistedVar явно с ним не связан.

-~{}~ 10.02.06 17:04:

Panchous
В общем проблема уже решена, спасибо что пытался помочь, может я неправильно что-то объяснил.

http://xpoint.ru/forums/programming/PHP/thread/35480.xhtml
 

Mich

Продвинутый новичёк
Мануал я читал, но еще я шаблон смотрел:
PHP:
<?php echo smarty_function_printErrs(array('errs' => ((is_array($_tmp=@$this->_tpl_vars['msg']['name'])) ? $this->_run_mod_handler('default', true, $_tmp, '') : smarty_modifier_default($_tmp, '')),'sep' => "<BR />"), $this);?>
То, что мне надо.

а насчет ворнинга:
Выполнив этот код, у тебя этого (Undefined index: notExistedVar) не будет?
{mailto address=$notExistedVar}
 
Сверху