首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >我想在一个类中读一个函数

问我想在一个类中读一个函数
EN

Stack Overflow用户
提问于 2019-04-19 03:07:53
回答 1查看 114关注 0票数 4

我不理解附加的内容。(php7.x)

星期五1902年:48:49.446162 2019 pid 2750 AH01071: Got错误‘AH01071消息: PHP致命错误: LogicException:函数'Core\OM\CORE::autoload’not (未找到‘CORE\OM\AH01071’类)\n#1 {main}\n抛入/var/www/xxxx/xxxx/web 8/web/client/index.php第29行‘

index.php

代码语言:javascript
复制
define('BASE_DIR', __DIR__ . '/shop/includes/Core/');

require(BASE_DIR . 'OM/CORE.php');

spl_autoload_register('Core\OM\CORE::autoload');

这个函数似乎有一个问题:spl_autoload_register

我试过不同的东西,总是会犯同样的错误。喜欢,

代码语言:javascript
复制
spl_autoload_register(['\\Core\\OM\\CORE', 'autoload']);
spl_autoload_register('Core\OM\CORE::autoload')

你也有类似的问题吗?

论var_dump(is_file(BASE_DIR . 'OM/CORE.php')); ==> true

我不明白为什么它不想使用autoload函数,它会造成这个错误。这就像CORE.php不被读取,也不存在。

我试图将var_dump('test')和exit放在文件CORE.php的顶部,但是没有消息。对于生成的日志,它与上面的相同。

chmod在644号。

我不知道如何解决这个问题。任何帮助都将不胜感激。

EN

回答 1

Stack Overflow用户

发布于 2019-09-05 21:08:34

您正在尝试加载不存在的内容,请回显路径:DIR。‘/shop/include/Core/ to浏览器主体,在此位置,您需要OM/CORE.php,因此它试图获取驻留在:__DIR__中的文件。'/shop/includes/Core/OM/CORE.php

该函数的目的是包含PHP类文件,所以在您的网站中,当您想要初始化一个类对象时,首先需要包含PHP类文件。如果我有很多课呢?

许多编写面向对象应用程序的开发人员为每个类定义创建一个PHP源文件。最大的麻烦之一是必须在每个脚本的开头(每个类一个)写一长串需要包含的内容。

在PHP 5中,这不再是必要的。spl_autoload_register()函数注册任意数量的自动加载器,使类和接口能够在当前未定义的情况下自动加载。通过注册自动加载程序,PHP获得了在类或接口失败之前加载类或接口的最后机会。

票数 0
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/55756106

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档