php - 在“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 之间切换 - 没有区别。
所以,我想请你帮忙。您有任何提示/想法,为什么我可能会收到该错误?
解决方案
问题解决了。
旧框架使用的是旧__autoload
函数,该函数已被弃用。SimpleSAMLPHP 使用了新功能。这些自动加载组合会导致其中一个覆盖另一个。
解决方案:
从 切换__autoload
到spl_autoload_register
。
类似问题:覆盖供应商自动加载作曲家
推荐阅读
- python - TensorFlow - 从模板中创建张量
- bash - 如何在具有不同用户的脚本内使用 for 循环运行一组命令(su -c)
- javascript - 从以前的命令中获取数据
- c - 数组的gcc内联asm输入和输出参数?
- authentication - 在本地机器上使用 google.colab.auth.authenticate_user() 得到 OperationalError
- java - Spring Webflux 资源服务器和 Oauth2
- node.js - firebase 云函数从批处理函数返回 json 对象
- flutter - 如何将上下文注入自定义函数?
- c# - gmail 日历在主机上不起作用(asp.net mvc)
- java - Java: Trying to take keyboard input and evaluate it in an if/else condition to set a boolean value to true or false