这是我第一次尝试加载不使用 Laravel 服务提供者或外观的 Composer 包。
我正在尝试安装这个包:https://github.com/mollie/mollie-api-php https://github.com/mollie/mollie-api-php
我已按照以下步骤使用 Composer 安装软件包。
在我的控制器的顶部我添加了:
require_once base_path('vendor/Mollie/API/Client.php');
我收到以下错误:
main():无法打开所需的“../vendor/Mollie/API/Client.php”
(include_path='.:/Applications/MAMP/bin/php/php7.0.0/lib/php')
它找不到该文件。即使错误中的路径是类所在的路径。我还应该采取更多步骤吗?
包的结构:
composer.json
从包装中:
"autoload": {
"psr-0": {
"": "src/"
}
Update:我的控制器有这个命名空间
namespace App\Http\Controllers;
因此,当我尝试更新我的类时,它显然无法在该名称空间内找到该类。那么我如何忽略 1 个类的命名空间
因为这在该控制器内不起作用:
$mollie = new Mollie_API_Client;
正如评论中所指出的,Composer 会为您处理自动加载 - 手动重新要求它是没有必要的,而且实际上可能会导致问题。
我的控制器有一个命名空间,因此它尝试从命名空间加载该类,我如何忽略它 1 个类?
您可以使用前导 \ 来引用该类,即new \Mollie_API_Client
,这将告诉 PHP 在根目录而不是控制器的命名空间中查找。
你也可以把use Mollie_API_Client;
在文件顶部完成类似的事情。你会看到的use
由于这个原因,很多 Laravel 文件顶部都有这样的语句。
本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系:hwhale#tublm.com(使用前将#替换为@)