2014-07-10 123 views
0

我想在沒有error_reporting(NULL)的情況下執行錯誤抑制,同時向可能尚未設置的變量添加值。例如:Smarty錯誤抑制

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

在這種情況下$ var.1還沒有定義,在PHP我可以使用@行盈忽略錯誤。我如何在Smarty上做到這一點?

+0

可能重複的[禁用smarty通知](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和Smarty中。