码迷,mamicode.com
首页 > Web开发 > 详细

PHP Slim 框架初体验之无法访问控制器

时间:2016-06-16 23:09:16      阅读:634      评论:0      收藏:0      [点我收藏+]

标签:

话不多说,先把报错贴出来:

技术分享

刚开始用slim框架,在设置完自动加载文件和路由文件之后,我写了一个控制器:

<?php
use \Psr\Http\Message\ServerRequestInterface as Request;
use \Psr\Http\Message\ResponseInterface as Response;
use \interop\Container\ContainerInterface;

class HomeController 
{
    protected $app;

    public function __construct(ContainerInterface $ci)
    {
        $this->app = $ci;
    }

    public function index(Request $request, Response $response, $args)
    {
        echo ‘恭喜你访问成功‘;
    }
}

并且设置了路由,将路由中的index指向Home控制器中的index方法:

$app->get(‘/index‘, ‘HomeController:index‘);

本来想当我访问http://localhost/slimtest1/public/index.php/index 的时候,应该打印出index方法里面的文字才对

没想到报了开头我贴出来的错误。

搞了好久才发现原来是我的composer.json里面没有指定自动加载路径,所以我增加了下面一段代码:

{
    "require": {
        "slim/slim": "^3.0"
    },
    "autoload": {
        "classmap" : [
            "app/controllers"
        ]
    }
}

上述阴影部分为新增加的代码,指定控制器去app/controllers文件夹下面加载。

然后执行composer install 更新一下就好了。

成功结果:

技术分享

 

总结原因就是我对composer这种开发模式不太了解。不清楚如何对composer.json文件进行管理

PHP Slim 框架初体验之无法访问控制器

标签:

原文地址:http://www.cnblogs.com/superfat/p/5592357.html

(0)
(0)
   
举报
评论 一句话评论(0
登录后才能评论!
© 2014 mamicode.com 版权所有  联系我们:gaon5@hotmail.com
迷上了代码!