Laravel 学习

Laravel 学习

路由

配制文件在 routes/index.php

路由定义规则

/*
	Route::请求方式('路径', 回调函数)
	可以直接 echo 一个字符串
	也可以返回视图 view('视图名')
*/
Route::get('/', function(){

})
/*
	有时候想要一个回调函数匹配多种请求方式就要用到 Route::match
	Route::match(['get', 'post', ...], '请求路径', 回调函数)
*/
Route::match(['get', 'post'], '/match', function() {
	echo 'match route';
})
// 匹配所有请求方式
Route::any('/any', function(){
	echo 'any route';
})

参数传递

必选参数

Route::get('/user/{id}', function($id){
	echo '用户id为: ' . $id;
})

可选参数

// 可选参数,回调函数的参数必须有默认值.
Route::get('/user/{id?}', function($id = 1){
	echo '可选用户id为: ' .$id;
})

通过query_string传递

回调函数里面也可以通过$_GET,$_POST

路由别名

// 通过 -> name('路由名') 设置路由名字
Route::get('/name', function(){
	echo ''
}) -> name('name');

通过 php artisan route:list 查看所有的路由名字

路由分组

	/*
		假如 有多个路由,有相同的前缀比如 /user/list, /user/add ... 可以以下这么写
	*/
	Route::group(['prefix' => 'user'], function(){
		Route::get('add', fucntion(){});
		Route::get('list', function(){});
	});

控制器

控制器位于 app/Http/Controllers/

命名方式

大驼峰的控制器名 + Controller.php

控制器创建

框架提供了创建控制器的命令,如创建TestController

php artisan make:controller TestController

控制器路由

即如何路由如何调用控制器的方法而不是调用匿名函数

/*
	Route::get('/test', '控制器名@控制器方法名');
*/

路由分目录管理

  • 用命令创建控制器 php artisan make:controller 控制器目录名控制器名
  • 写控制器路由时不再是 控制器名@方法名 而是 控制器目录名控制器名方法名

处理用户输入

通过 IlluminateSupportFacadesInput 的静态方法获取用户输入, 一下方法既可以获取get中的信息也可以获取get中的信息

  • Input::all() 获取所有输入
  • Input::get('参数名', '没有接收到的时候的默认值')
  • Input::get('') 获取单个输入
  • Input::only(['',''])获取多个输入
  • Input::except(['',''])获取除了指定的参数的其他参数
  • Input::has('') 判断某个参数是否存在

配置别名

在 app.php里面配置 aliases => [] 中添加
配置IlluminateSupportFacadesInput的别名 Input 'Input' => IlluminateSupportFacadesInput::class,

数据库操作

数据库配置可以在.env里面配置或者config/database.php

DB类

原文地址:https://www.cnblogs.com/c-aha/p/13911858.html