我们正在测试到php5.3的迁移,发现了一些奇怪的问题。试图追踪到底发生了什么。这是一个简化的场景。
文件.php
include_once(b.php);
class A {....
文件b.php
include_once(a.php);
class B extends A {....
事实上,循环引用是通过一条更加复杂的路径发生的,还有各种其他的包含。但是,主要的想法是,当它涉及到类B的定义时,它会抛出一个致命错误,因为它没有类a的定义。
想法?我们正在努力清理我们的include,希望能防止这些循环引用,但我很好奇为什么会失败,尤其是看到它可能依赖于版本。
谢谢!
使用spl_autoload而不是include
您可以在此处找到自动加载类和使用标准的示例:http://groups.google.com/group/php-standards/web/psr-0-final-proposal?pli=1
它将清理您的代码,请确保:)