使用以下内容并不像我预期的那样工作。使用有效的类名,它可以执行,但使用不存在的类,它只会崩溃而不会记录任何错误。这是预期的行为吗?如果是这样,有关如何测试对象是否正确实例化的任何建议?
$className = 'SomeClass';
try {
$object = new $className;
if (is_object($object)) {
$logger->info(__METHOD__.' object created');
return $object;
} else {
$logger->err(__METHOD__.' '.$className.' is not an object!');
}
} catch (Exception $e) {
$logger->err(__METHOD__.' error: '.print_r($e->getMessage()));
}