首页 > 解决方案 > 在“require_once”之后找不到类

问题描述

我收到以下错误:

`Fatal error: Class 'DummyClass' not found in...`

<?php

 require_once("3rdparty/simplesaml/lib/_autoload.php");

 class login extends DummyClass { (this is the line the error refers to)

 [...]

 }

?>

如果我注释掉它,require_once它工作得很好。

DummyClass 是在外部定义的,可以在 prepend 文件中找到。(我认为这个问题并不重要,因为如果我注释掉它会按预期工作require_once

文件的路径也应该是正确的,因为如果我更改路径,它会给我一个“需要打开失败...”错误。

我还尝试在 PHP 5.6 和 7 之间切换 - 没有区别。

所以,我想请你帮忙。您有任何提示/想法,为什么我可能会收到该错误?

标签: phpclassrequire-once

解决方案


问题解决了。

旧框架使用的是旧__autoload函数,该函数已被弃用。SimpleSAMLPHP 使用了新功能。这些自动加载组合会导致其中一个覆盖另一个。

解决方案:

从 切换__autoloadspl_autoload_register

类似问题:覆盖供应商自动加载作曲家


推荐阅读