Laravel框架控制器的使用

一、控制器使用(C)

控制器主要的作用负责接收用户输入请求,调度模型处理数据最后利用视图展示数据。

1、控制器文件写在哪里?

在这里插入图片描述
其中Auth存放的是框架自带的Auth认证相关的示例控制器文件,controller.php文件是框架的基类控制器,Auth文件夹的存在说明了控制器是可以分目录的(模块)进行管理的。

2、控制器文件如何命令?

命名可以参考Auth文件夹中给定的示例文件:
在这里插入图片描述
文件命名方式:大驼峰+Controller.php。

3、结构代码如何书写?

注意:其控制器结构代码,不需要自己去手动编写,可以通过artisan命令来自动生成。
如下:
php artisan make:controller 控制器名
在这里插入图片描述

php artisan make:controller 目录路径/控制器名 (如果你有分目录)
在这里插入图片描述
效果:
在这里插入图片描述

4、控制器路由(项目以该方式为主)

即如何使用路由规则调用控制器下的方法,而不再走回调函数。
路由设置格式基本相同,只是将匿名函数换成"控制器类名@方法名"
定义格式如下:
Route::请求方法(‘路由表达式’, ‘控制器@方法’);
例如:在My控制器中创建my1方法,其中输出phpinfo信息
在这里插入图片描述
在这里插入图片描述
效果:
在这里插入图片描述
如果页面报错:

laravel 报 Target class [MyController] does not exist.

那么在项目里找\app\Providers\RouteServiceProvider.php找到 protected $namespace = 'App\\Http\\Controllers';解除注释就可以了。
没有找到就加上。


使用分目录管理的控制其路由:
在这里插入图片描述

在这里插入图片描述
效果:
在这里插入图片描述

5、接收用户输入【重点】

接收用户输入的类:Illuminate\Support\Facades\Input laravel8以上的版本使用Request,用法类似。
Facades:"门面"的思想。门面是介于一个类的实例化与没有实例化中间的一个状态。其实是类的一个接口实现。在这个状态下可以不实例化类但是可以调用类中的方法。说白了就是静态方法的调用。

Input::get(‘参数的名字’, ‘如果参数没有被传递使用该默认值’) // 类似php里三元运算符
Input::all() // 获取所有的用户的输入
Input::get(‘参数名字’) // 获取单个的用户的输入
Input::only([‘id’, ‘age’]) // 获取指定几个用户的输入
Input::except([‘id’, ‘age’]) // 获取指定几个用户的输入以外的所有的参数
Input::has(‘name’) // 判断某个输入的参数是否存在
(上述既可以获取get中的信息,也可以获取post中信息)

在Laravel中如果需要使用facades的话,但是又不想写那么长的引入操作:
则可以在config/app.php中定义长串的别名(在aliases数组中定义别名):
在这里插入图片描述
接下来输入如下代码:
web.php中定义控制器路由:
在这里插入图片描述
在laravel框架中也可以使用dd(需要打印的内容)(dd = dump + die)但是dd函数之后的内容将不会继续执行,dump后续代码还可执行。
我们在TestController下输入如下代码进行测试:
在这里插入图片描述
效果如下:
在这里插入图片描述
更多的规则可以点这里。

在学习的php的路上,如果你觉得本文对你有所帮助的话,那就请关注点赞评论三连吧,谢谢,你的肯定是我写博的另一个支持。

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 打赏
    打赏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

你华还是你华

你的鼓励将是我创作的最大动力

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值