3 回答
TA贡献1872条经验 获得超4个赞
您应该在自动加载后使用 use 语句:
<?php
namespace Cart;
use DI\ContainerBuilder;
use DI\Bridge\Slim\App as DIBridge;
class App extends DIBridge
{
protected function configureContainer(ContainerBuilder $builder)
{
$builder->addDefinitions([
'settings.displayErrorDetails' => true,
]);
//
}
}
并更改此文件:
session_start();
require __DIR__ . '/../vendor/autoload.php';
use Cart\App;
$app = new App;
TA贡献1744条经验 获得超4个赞
您的 composer.json 需要看起来几乎与教程中的一模一样。我有同样的问题。要要求旧版本,您只需执行composer remove slim/slimthen之类的操作composer require slim/slim ^3.0。
特别是,您的 php-di 需要低于 v1.1。我的 composer.json:
{
{
"require": {
"slim/slim": "^3.0",
"slim/twig-view": "^2.1",
"illuminate/database": "^5.2",
"php-di/slim-bridge": "v1.0.2"
},
"autoload": {
"psr-4": {
"Cart\\": "app/"
}
}
}
TA贡献1817条经验 获得超6个赞
您使用的是错误的命名空间use DI\Bridge\Slim\App as DIBridge;。包中不再有App类。DI
反而
使用以下代码use DI\Bridge\Slim\Bridge as DIBridge;
添加回答
举报
