例如,如果遇到此错误,是否可以通过我的symfony控制器处理所有错误:
在我的控制器中,有没有一种方法可以使用try / catch来获得此错误?例如:
class SomeClass extends Controller
{
public function doSomethingAction(Request $request){
//do something
try {
//do something
}
catch(\Exception $e){
dump("ERROR:".$e->getMessage()); //<--this is not dumping anithing
}
}
}
代替类似的东西
“错误:类型错误:参数1传递给了.....
答案 0 :(得分:2)
使用PHP 7,您可以通过捕获它们的共享接口Throwable
来处理类型不匹配的PHP错误(如TypeErrors)(如您的示例)以及异常。
您应该对此特别小心,尤其是在外部控制器上,因为这可能会阻止您看到意外错误,从而导致问题恶化,或者您看不到应用程序的某些部分完全损坏时。至少您应该有适当的日志记录。
总而言之,您可以像这样捕获错误和异常:
try {
...
} catch (\Throwable $error) {
...
}