【问题标题】:Class 'Slim\Slim' not found with composer作曲家找不到“Slim\Slim”类
【发布时间】:2016-01-17 23:26:39
【问题描述】:

我想在子目录中使用 Slim 3,但似乎无法加载它。所有文件都包含在子目录中,包括 composer.json。这是我的 composer.json:

"require": {
    "slim/slim": "3.0.0-RC1"
}

这是我的脚本:

<?php
require "vendor/autoload.php";
use \Slim\Slim;

$app = new \Slim\Slim();
$app->get('/subdirectory/hello/:name', function ($name) {
    echo "Hello, $name";
});
$app->run();

我尝试了很多东西,包括Class Slim not found when installing slim with composerPHP Fatal error: Class 'Slim' not found。不幸的是,他们没有解决我的问题。

我得到的错误是Fatal error: Class 'Slim\Slim' not found in ... on line 5,对应$app = new \Slim\Slim();

有人知道我错过了什么吗?

【问题讨论】:

  • 您是否检查过该 RC1 是否存在未解决的问题?您是否检查过自动装载机是否正确包含在内?您是否检查过自动加载器使用的路径?您是否尝试过转储自动加载器
  • 另外,如果您通过 use 导入类,则在创建新实例时不要放置命名空间

标签: php composer-php slim


【解决方案1】:

好像是Slim3 is not using Slim as main class name but App

所以你的代码应该是:

<?php
require "vendor/autoload.php";
use \Slim\App;

$app = new App();
$app->get('/subdirectory/hello/:name', function ($name) {
    echo "Hello, $name";
});
$app->run();

【讨论】:

  • 对我来说没有帮助:(同样的错误 (Fatal error: Class 'App' not found in...)
  • @VladaKatlinskaya,您是否在应用程序变量实例化之前放置了 use \Slim\App 语句?如果您这样做了,请再问一个问题,说明此解决方案不适合您。
猜你喜欢
  • 1970-01-01
  • 2015-03-05
  • 2017-05-16
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 2020-03-22
相关资源
最近更新 更多