1、如果访问链接中需要加入跨域请求,那么在路由后面加上
allowCrossDomain()
2、路由中可以设置miss路由,感觉404的页面定向可以使用这种方式
3、如果想生成链接,使用buildUrl();
4、控制器中打印一般用halt(),中断输出;
5、获取当前控制器名称
Request::controller();
获取操作名称
Request::action();
6、变量判断
Request::has('id','get');
7、获取前端提交的自己需要的字段Request::only(['id','name']);
8、可以排除指定字段Request::except(['id','name']);
9、可以将前端提交的数据强制转化为自己需要的类型,比如Request::get('id/a')转为数组的格式;
10、可以在中间件中给request赋值,但是不会影响request->param中的数据
11、input参数可以简化request中获取方式。
12、获取请求头信息Request::header();
13、路由中如果加上cache后缀,会自动缓存上次访问的数据,状态码是304.
14、可以给路由设置缓存的名称标识,方便下次清理。
15、response提供了助手函数,可以按固定格式输出,而且可以在后面加入要输出的状态码。如果后续用header函数的可以设置头部信息。可以用cookie函数设置返回值的缓存。
16、有时候需要跳转过去在跳转回来,这时候有remember函数用来记住地址,然后用restore跳转回来。
<?php
namespace app\controller;
class Index
{
public function index()
{
// 判断session完成标记是否存在
if (session('?complete')) {
// 删除session
session('complete', null);
return '重定向完成,回到原点!';
} else {
// 记住当前地址并重定向
return redirect('hello')
->with('name', 'thinkphp')
->remember();
}
}
public function hello()
{
$name = session('name');
return 'hello,' . $name . '! <br/><a href="/index/index/restore">点击回到来源地址</a>';
}
public function restore()
{
// 设置session标记完成
session('complete', true);
// 跳回之前的来源地址
return redirect()->restore();
}
}
17、download函数可以方便文件下载