Я столкнулся с интересной дилеммой. В классе DataMapper я генерирую имя класса, которое будет использоваться для возвращенных строк из базы данных.
Дело в том, что все мои классы загружены автоматически и могут поступать из многих мест (библиотека, приложение/модели и т.д.), и я хотел проверить, действительно ли создано имя класса. Теперь можно подумать, что:
try
{
$test = new $className();
}
catch(Exception $ex)
{
// Class could not be loaded
}
Но, конечно, php-ошибки (вместо того, чтобы бросать исключение) говорят, что класс не найден... Не очень полезно. Не удалось переписать автозагрузчик в Zend_Loader для поиска всех каталогов, чтобы узнать, может ли класс быть загружен, есть ли способ выполнить это?
Для кого-то интересно, почему мне нужно будет это сделать, а не просто вызвать ошибку Class Not Found, если класс не найден, я хочу сгенерировать класс в заранее определенном месте, чтобы сделать мою жизнь легкой как этот проект идет.
Спасибо заранее! Терри
P.S. Дайте мне знать, если вам больше нужна информация.