我试图解决错误:Fatal error: Cannot redeclare class
我一直在寻找各处,我无法找到实例化课程的位置。
无论如何,我可以打印有关该类的现有实例的调试信息。
答案 0 :(得分:3)
您有可能导入多次声明该类的文件。这可能是包含/需要失控的症状,因此您可能只需要简单的结构。
另一种方法是使用自动加载来加载类以避免此类问题。另一种方法是仅使用include_once或require_once。我通常更喜欢使用具有简单结构的require。
答案 1 :(得分:3)
是的,愚蠢的php不会告诉你声明类的位置。尝试以下(在致命错误行之前)
$r = new ReflectionClass("YourClassName"); echo $r->getStartLine();
答案 2 :(得分:0)
您可以使用var_dump(debug_backtrace());
并查看调用堆栈,找出对象的实例化位置。