Fatal error: Class 'Illuminate\Database\Capsule\Manager' not found

Fatal error: Class 'Illuminate\Database\Capsule\Manager' not found

我正在关注 phpacademy 的新身份验证教程 https://www.youtube.com/watch?v=PF2WkRCZfBg

我有一个 class 文件 database.php:

<?php
use Illuminate\Database\Capsule\Manager as Capsule;

$capsule = new Capsule;

$capsule->addConnection([
 'driver'     => $app->config->get('db.driver'),
 'host'       => $app->config->get('db.host'),
 'database'   => $app->config->get('db.name'),
 'username'   => $app->config->get('db.username'),
 'password'   => $app->config->get('db.password'),
 'charset'    => $app->config->get('db.charset'),
 'collation'  => $app->config->get('db.collation'),
 'prefix'     => $app->config->get('db.prefix')
]);

$capsule->bootEloquent();

但是它抛出了这个错误:

致命错误:Class 'Illuminate\Database\Capsule\Manager' 未在第 4 行 \xampp\htdocs\boilerplate\app\database.php 中找到 'Illuminate\Database\Capsule\Manager'

我在 start.php

中需要它
<?php
require 'database.php';
//############ NAMESPACING ################//
use Slim\Slim; //import slim
use Noodlehaus\Config;
use Boilerplate\User\User;
//#########################################//

session_cache_limiter(false);
session_start();

ini_set('display_errors','on'); //TURN OFF ON LIVE SITE

define('INC_ROOT', dirname(__DIR__)); //create local root

require INC_ROOT . '/vendor/autoload.php'; // autoload in all the      dependencies in the vendor files.

$app = new Slim([
'mode' => file_get_contents(INC_ROOT . '/mode.php')
]); //assign the entire app file to a variable

$app->configureMode($app->config('mode'), function() use ($app){
$app->config = Config::load(INC_ROOT . "/app/config/{$app->mode}.php"); //pull in the config file
});

$app->container->set('user', function(){
    return new User;
});

确保您已将 Illuminate\Database 添加到您的作曲文件中,并且 运行 composer update

然后在添加自动加载器后放置 require 'database.php';

require INC_ROOT . '/vendor/autoload.php';

// Below here

我有同样的错误。在我的例子中,解决方案是使用下一个命令再次安装作曲家:

composer install

如果您正在使用 docker,请确保您在 运行 安装命令之前位于容器内。

docker-compose run <app_name> bash