如何在不引发错误的情况下检测类是否不存在
- 论坛
- 如何在不引发错误的情况下检测类是否不存在
12 浏览
如何在不引发错误的情况下检测类是否不存在
我遇到了一个有趣的困境。在一个DataMapper类中,我正在生成一个用于返回数据库中行的类名。
问题是,我的所有类都是自动加载的,并且可以来自多个地方(库,应用程序/模型等),我想检查生成的类名是否实际存在。现在,有人可能会认为:
try { $test = new $className(); } catch(Exception $ex) { // 无法加载类 }
但是,当然,PHP错误(而不是抛出异常)说找不到该类...没有什么帮助。除了重写Zend_Loader中的自动加载程序以搜索所有目录以查看是否可以加载类之外,还有其他方法可以实现这一点吗?
对于那些想知道为什么我需要这样做而不是让“类未找到”错误显示出来的人,如果找不到类,我想在预定位置生成一个类,以便在项目进行时使我的生活更轻松。
提前感谢!
Amy
附言:如果你们需要更多信息,请告诉我。