1、请求
1.1变量获取
变量获取有三种方式:
1、门面方式获取数据
//use think\facade\Request
//此方法要传入参数$request
public function fun(Request request){
// GET的获取
Request::get('id');
// 设置默认值
Request::get('id',2333);
// 还可以添加一个方法如intval
Request::get('age',20,'intval');
// 获取get全部数据
Request::get();
// 判断一个key是否存在
Request::has('sex');
// 白名单
Request::only(['id','age']);
// 黑名单
Request::except(['id']);
// POST获取
Request::post('name');
// PUT获取
Request::put('name');
// DELETE获取
Request::delete('name');
// 获取任意类型
Request::param('name');
// 判断请求的类型
Request::isPost();
Request::isGet();
Request::isPut();
Request::isDelete();
// 是否是ajax请求
Request::isAjax();
// 和$_SERVER一样的
Request::server();
// 获取环境变量 即框架定义好的常量
Request::env();
// 获取路由
Request::route();
}
2、依赖注入方式
public function fun(Request request){
$request -> get('id');
$request -> has('name');
// 白名单和黑名单
$request -> only(['id','name']);
$request -> except(['score']);
}
3、辅助函数
public function fun(){
// 获取ge的全部参数
input('get.');
// 获取指定参数
input('get.id');
// 给指定参数设置默认值
input('get.id',1);
// post数据
input('post.');
// 获取任意类型的请求
input('param.');
input('');
// 获取任意类型的 key 为name值 如果get和post优先post
input('name');
// 判断一个key是值存在
input('?name');
// 使用变量修饰符 a 数组 s 字符串 d 数字
input('id/d');
}
1.2参数绑定
参数绑定是把当前请求的路由参数作为操作方法的参数直接传入,参数绑定不区分请求类型
//:id是必选参数 [:id]是可选参数
Route::get('req/[:id]','@index/demo/req') -> name('index/demo/req');
2 响应
2.1 输出响应
return 'hello world';
2.2 json数据返回 可以在app.php文件中设置默认输出为json格式
'default_return_type' => 'json',
返回json数据
return json($data,http状态码);
return json($data)->code(201)->header(['Content-Type' => 'application/json']);
2.3 重定向
redirect('地址或方法名',数组参数);