Zend が存在しないファイルを自動ロードしようとすると、try/catch ブロックでキャッチできないエラーがスローされることがわかりました。これは私も使用すると起こりclass_exists
ます。zendをハッキングして問題を修正しました:
if ($once) {
if (!@include_once ($filename)) {
throw new Exception("Failed to include $filename");
}
// include_once $filename;
}
else {
if (!@include ($filename)) {
throw new Exception("Failed to include $filename");
}
// include $filename;
}
コメントアウトされた行は zend のオリジナルです。ファイルをインクルードできない場合にスローされる例外をキャッチできるようになりました。zendのハッキングを伴わない、これを行うためのよりクリーンな方法を提案できる人はいますか?
私は Zend バージョン 1.11.10 を使用しており、問題のコードは Zend_Loader の 146 行目です。
ありがとう。