【问题标题】:How to access a package file form laravel controller如何从 laravel 控制器访问包文件
【发布时间】:2023-03-20 16:45:02
【问题描述】:

我在我的 laravel 项目中使用 gabrielbull/ups-api

composer.json如下

"autoload": {
    "psr-4": {
        "App\\": "app/",
        "Ups\\": "vendor/gabrielbull/ups-api/src"
    },
    "classmap": [
        "database/seeds",
        "database/factories"
    ]
},

控制器代码如下:

use Ups\Rate;

$rate = new Ups\Rate($accessKey, $userId, $password);

但我收到一个错误 找不到类“App\Http\Controllers\Ups\Rate”

【问题讨论】:

  • 你使用了两次Ups\Rate。如果你的使用部分包含use Ups\Rate;,你必须初始化没有命名空间$rate = new Rate($accessKey, $userId, $password);的类,否则删除使用部分和使用命名空间的初始化类

标签: php laravel shipping rate ups


【解决方案1】:

您的控制器找不到 Ups\Rate。

你应该可以做到:

$rate = new Rate($accessKey, $userId, $password);

如果没有:您应该能够使用以下代码快速调试。

require __DIR__ . '/vendor/autoload.php'
use Ups\Rate;
new Rate()
echo Rate::class; // output

【讨论】:

  • @FranklinInnocentF 如果您的问题由此得到解决,请点击投票下方的绿色复选标记,以便其他人知道您的问题已解决。没问题!
【解决方案2】:

它是一个 PHP 包,所以一旦你通过 composer 安装它,它就已经自动加载了。您不必弄乱composer.json 文件。安装后运行:

composer dumpautoload

【讨论】:

    猜你喜欢
    • 1970-01-01
    • 1970-01-01
    • 2013-02-03
    • 2018-09-25
    • 2015-04-23
    • 2020-02-11
    • 2013-07-05
    • 1970-01-01
    • 2017-04-21
    相关资源
    最近更新 更多