Laravel控制器的原理是什么,创建的方法是怎样
Admin 2022-06-08 群英技术资讯 1612 次浏览
这篇文章主要介绍“Laravel控制器的原理是什么,创建的方法是怎样”,有一些人在Laravel控制器的原理是什么,创建的方法是怎样的问题上存在疑惑,接下来小编就给大家来介绍一下相关的内容,希望对大家解答有帮助,有这个方面学习需要的朋友就继续往下看吧。本文实例讲述了laravel框架中控制器的创建和使用方法。分享给大家供大家参考,具体如下:
laravel中我们可以使用 artisan 命令来帮助我们创建控制器文件。
php artisan make:controller TestController
TestController 控制器名我们可以任意指定。文件默认会创建在 app\Http\Controllers 目录下。
打开控制器文件,我们就可以添加自已的方法了。
<?php
namespace App\Http\Controllers;
use Illuminate\Http\Request;
class TestController extends Controller
{
public function test()
{
echo 'test...';
}
}
在路由文件 routes/web.php 中配置路由就可以访问了。
Route::get('/test', 'TestController@test');
如何获取用户的输入,一般推荐通过依赖注入的方式来获取。
<?php
namespace App\Http\Controllers;
use Illuminate\Http\Request;
class TestController extends Controller
{
public function test(Request $request)
{
//获取所有请求数据
$data = $request->all();
//获取指定请求数据
$id = $request->input('id');
}
}
laravel中为我们编写 restful 风格的代码,提供了简单方式,只需在创建控制器命令后面加上 --resource 选项。
php artisan make:controller OrderController --resource
laravel帮我们创建指定的方法,各自表示不同的意义和作用。
<?php
namespace App\Http\Controllers;
use Illuminate\Http\Request;
class OrderController extends Controller
{
/**
* Display a listing of the resource.
*
* @return \Illuminate\Http\Response
*/
public function index()
{
//
}
/**
* Show the form for creating a new resource.
*
* @return \Illuminate\Http\Response
*/
public function create()
{
//
}
/**
* Store a newly created resource in storage.
*
* @param \Illuminate\Http\Request $request
* @return \Illuminate\Http\Response
*/
public function store(Request $request)
{
//
}
/**
* Display the specified resource.
*
* @param int $id
* @return \Illuminate\Http\Response
*/
public function show($id)
{
//
}
/**
* Show the form for editing the specified resource.
*
* @param int $id
* @return \Illuminate\Http\Response
*/
public function edit($id)
{
//
}
/**
* Update the specified resource in storage.
*
* @param \Illuminate\Http\Request $request
* @param int $id
* @return \Illuminate\Http\Response
*/
public function update(Request $request, $id)
{
//
}
/**
* Remove the specified resource from storage.
*
* @param int $id
* @return \Illuminate\Http\Response
*/
public function destroy($id)
{
//
}
}
具体方法的作用如下所示:
| HTTP 方法 | URI | 控制器方法 | 路由名称 | 作用描述 |
| GET | /order | index | order.index | 显示所有订单列表 |
| GET | /order/create | create | order.create | 显示创建订单页面 |
| POST | /order | store | order.store | 接收提交数据,创建订单 |
| GET | /order/{id} | show | order.show | 显示单个订单信息 |
| GET | /order/{id}/edit | edit | order.edit | 显示修改订单页面 |
| PUT/PATCH | /order/{id} | update | order.update | 接收提交数据,修改订单 |
| DELETE | /order/{id} | destroy | order.destroy | 删除订单 |
最后我们通过 Route::resource() 来绑定上面的所有路由。
Route::resource('order', 'OrderController');
我们也可以通过命令查看,绑定的路由列表。
php artisan route:list
免责声明:本站发布的内容(图片、视频和文字)以原创、转载和分享为主,文章观点不代表本网站立场,如果涉及侵权请联系站长邮箱:mmqy2019@163.com进行举报,并提供相关证据,查实之后,将立刻删除涉嫌侵权内容。
猜你喜欢
所有php里面的值都可以使用函数 serialize()来返回一个包含字节流的字符串来表示。 unserialize()函数能够重新把字符串变回php原来的值。 序列化一个对象将会保存对象的所有变量,但是不会保存对象的方法,只会保存类的名字。
今天小编就为大家分享一篇Laravel 之url参数,获取路由参数的例子,具有很好的参考价值,希望对大家有所帮助。一起跟随小编过来看看吧
PHP在变量定义中不需要(或不支持)明确的类型定义;变量类型是根据使用该变量的上下文所决定的。也就是说,如果把一个字符串值赋给变量 $var,$var 就成了一个字符串。...
今天小编就为大家分享一篇关于laravel-admin ueditor 集成并解决刷新的问题,具有很好的参考价值,希望对大家有所帮助。一起跟随小编过来看看吧
本文主要给大家分享的是基于PHP的swoole 异步文件读写操作,小编觉得是比较实用的,因此分享给大家参考,感兴趣的朋友就跟随小编一起来了解一下吧。
成为群英会员,开启智能安全云计算之旅
立即注册关注或联系群英网络
7x24小时售前:400-678-4567
7x24小时售后:0668-2555666
24小时QQ客服
群英微信公众号
CNNIC域名投诉举报处理平台
服务电话:010-58813000
服务邮箱:service@cnnic.cn
投诉与建议:0668-2555555
Copyright © QY Network Company Ltd. All Rights Reserved. 2003-2020 群英 版权所有
增值电信经营许可证 : B1.B2-20140078 ICP核准(ICP备案)粤ICP备09006778号 域名注册商资质 粤 D3.1-20240008