我研究了一种检查对象是否是对象(不是类的特定实例)的方法,并且我找到了is_object();
。
is_object()
会抛出任何异常吗?有没有办法用这种语言结构抛出异常?
private function objectInjector($object) {
try {
is_object($object);
return strtolower(get_class($object));
} catch (Exception $ex) {
$this->ex = $ex->getMessage();
if (APP_DEBUG) {
d($ex->getTrace());
}
}
}
答案 0 :(得分:1)
函数 is_object()返回一个bool,应该在if语句中使用,以便正确处理结果。
您可以在PHP文档中找到更多信息:http://php.net/manual/en/function.is-object.php
为什么你需要在该函数中抛出异常? 如果没有,您可以在逻辑中添加此代码,而无需委托给objectInjector:
if (is_object($object)) {
//do stuff with your object
} else {
//do anything else, is not an object
}
您可以在函数/方法的基础上使用try / catch语句来处理任何其他期望。
再见!