以下を使用すると、期待どおりに機能しません。有効なclassNameを使用すると、正常に実行されますが、存在しないクラスを使用すると、エラーをログに記録せずにクラッシュするだけです。これは予想される動作ですか?もしそうなら、オブジェクトが適切にインスタンス化されているかどうかをテストする方法についての提案はありますか?
$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()));
}