返回首页
当前位置: 主页 > 网络编程 > Php实例教程 >

laravel隐式控制器(控制器路由)以及laravel控制器的分组

时间:2017-10-02 22:24来源:知行网www.zhixing123.cn 编辑:麦田守望者

这次记录的内容由两部分,一部分是laravel的控制器分组,一部分是laravel的控制器路由,使用的laravel版本是5.1。


 

laravel的控制器分组:

laravel的控制器放在app/Http/Controllers目录下,如果控制器一多,就可能显得比较乱,我们想分成不同的目录管理,比如现在有个需求:我想把一个项目的用户中心的UserController控制器放在一个User目录下,那么我们只要使用命令:

php artisan make:controller User/UserController

运行万命令我们就可以在app/Http/Controllers/User/下找到UserController.php了,对于这个路由的访问方法,也很简单,比如该控制器下有个index方法,我们只需要在routes.php里面做如下定义即可使用:http://yourdomain.com/user,访问到index方法

Route::get('user','User\UserController@index');


 

laravel的控制器路由(隐式控制器):

前面接扫过laravel路由(基本版)和laravel路由(路由群组)了,今天记录一下laravel的隐式控制器,也就是控制器路由,当然laravel的路由方法还有很多,以后在学习使用中,慢慢记载。

依然那刚才我们建立的那个控制器来说,我们为该控制器建立了如下几个方法:

class UserController extends Controller {
    public function getIndex()
    {
        echo 'index';
    }
    public function postRegister()
    {
        echo 'register';
    }
    public function getLogin()
    {
        echo 'login';
    }
}

然后我们在routes.php里面作如下定义:

Route::controller('user','User\UserController');

这样我们就能使用get方式访问:http://yourdomain.com/user/index和http://yourdomain.com/user/login,通过post方式访问http://yourdomain.com/user/register这些网址了。

可以看出我们在控制器中为类方法命名时采用的命名规则是:[http请求方式前缀] + [首字母大写的方法名]

访问的url是不带前缀,方法名首字母由大写变成小写。

如:getIndex、getLogin、postRegister


 

注:如果修改完routes.php,路由规则没有生效,可以使用下面命令更新一下规则:

php artisan route:clear
顶一下
(0)
0%
踩一下
(0)
0%
标签(Tag):laravel laravel隐式控制器 laravel控制器
------分隔线----------------------------
------分隔线----------------------------
发表评论
请自觉遵守互联网相关的政策法规,严禁发布色情、暴力、反动的言论。
评价:
表情:
验证码:点击我更换图片
猜你感兴趣