0

通常在我的 Envoy.blade.php 文件中,我首先设置变量......

@include('./vendor/autoload.php');

@setup
    $dotenv = Dotenv\Dotenv::create(__DIR__);
    try {
        $dotenv->load();
        $dotenv->required(['DEPLOY_PATH'])->notEmpty();
    } catch ( Exception $e )  {
        echo $e->getMessage();
    }
@endsetup

当我运行时,envoy run deploy我收到以下错误。

PHP 致命错误:未捕获的 TypeError:传递给 Dotenv\Dotenv::create() 的参数 1 必须是 Dotenv\Repository\RepositoryInterface 的实例,给定字符串,在 /Users/khill5/Sites/interpreter/Envoyd538ebf09581d7d4e66c810d4e2dd41c.php 第 16 行调用并在 /Users/khill5/Sites/interpreter/vendor/vlucas/phpdotenv/src/Dotenv.php:62 中定义

发生了什么变化?

4

1 回答 1

1

我想到了。

@setup
    $dotenv = Dotenv\Dotenv::createImmutable(__DIR__);
    try {
        $dotenv->load();
        $dotenv->required(['DEPLOY_PATH'])->notEmpty();
    } catch ( Exception $e )  {
        echo $e->getMessage();
    }
@endsetup
于 2020-03-04T16:23:50.913 回答