[英]php how to catch exception when assigning to variable
我的代码中有一些类。 从这些类中,我启动对象,例如
$c = new category ($myGoodObject->categoryId);
这应该给出myGoodObject的类别对象。 但是,例如,如果在数据库中未定义类别ID例如1000,则该类将引发异常。
我该怎么抓? 从数据库启动/加载有时可能不存在的对象的最佳实践是什么? 如何避免失败?
谢谢!
编辑:
我尝试了这个:
try {
$c = new category (1000);
} catch (Exception $e) {return false;}
但这没用。
try
{
$c = new category ($myGoodObject->categoryId);
}
catch (Exception $e)
{
echo 'Caught exception: ', $e->getMessage(), "\n";
}
作为最佳实践,您应该首先尝试读取数据库以查看该值是否存在,如果不存在,则不要尝试创建该对象,因此避免了例外情况。
如果抛出异常,请使用try..catch块
try {
//try assigning
catch (Exception $e) {
//do something
}
在此处查看有关异常的更多详细信息
不要抓住它,只是在使用它之前确保它在那里。
if(isset($myGoodObject->categoryId)){
$c = new category ($myGoodObject->categoryId);
//...
}
声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.