2014-07-10 4 views
0

Я пытаюсь выполнить подавление ошибок без error_reporting (NULL), добавляя значения к переменной, которая еще не установлена. Например:Smarty Error Suppression

{$var.1 = $var.1 + 10} 

В этом случае $ вар.1 еще не определена, в PHP я могу использовать @ Infront линии игнорировать ошибку. Как я могу это сделать на Smarty?

+0

Возможный дубликат [disable smarty notice] (http://stackoverflow.com/questions/6789102/disable-smarty-notice) –

+0

Я не хочу использовать error_reporting, это не дубликат, я не хочу игнорировать все ошибки на в шаблоне я просто хочу игнорировать эту явную ошибку. – Galfau

ответ

0

Если это нормально, вы запрашиваете код PHP, вы можете сделать это следующим образом:

$errorReportingLevel = $smarty->error_reporting; 
$smarty->error_reporting = 0; 
echo $smarty->fetch('index.tpl'); 
$smarty->error_reporting = $errorReportingLevel; 
echo $smarty->fetch('index.tpl'); 

В первом вызове вы не получите каких-либо предупреждений и во втором вы будете.

Насколько я знаю, другого пути нет. Кроме того, вы должны действительно рассмотреть возможность удаления этого предупреждения. Код должен быть написан так, как отображаются уведомления или предупреждения - как в PHP ans в Smarty.