tp6记录第二天路由操作

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函数可以方便文件下载

 

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

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

余额充值