我發現,當Zend公司會嘗試自動加載一個文件,該文件不存在,它拋出,我不能在try/catch塊捕獲錯誤。這也發生在我使用class_exists
時。我已經通過hack zend解決了這個問題:那麼Zend_Loader包括不拋出異常
if ($once) {
if ([email protected]_once ($filename)) {
throw new Exception("Failed to include $filename");
}
// include_once $filename;
}
else {
if ([email protected] ($filename)) {
throw new Exception("Failed to include $filename");
}
// include $filename;
}
註釋掉的行是zend的原件。現在,我可以捕捉到無法包含文件時引發的異常。任何人都可以建議一個更乾淨的方式來做到這一點,不涉及黑客zend?
我在Zend的版本1.11.10,並且有問題的代碼是那麼Zend_Loader線146
感謝。