thinkphp5 redirect跳转
Posted
tags:
篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了thinkphp5 redirect跳转相关的知识,希望对你有一定的参考价值。
参考技术A重定向
\\think\\Controller类的redirect方法可以实现页面的重定向功能。
redirect方法的参数用法和Url::build方法的用法一致(参考URL生成部分),例如:
//重定向到News模块的Category操作$this->redirect('News/category', ['cate_id' => 2]);
上面的用法是跳转到News模块的category操作,重定向后会改变当前的URL地址。
或者直接重定向到一个指定的外部URL地址,例如:
//重定向到指定的URL地址 并且使用302$this->redirect('http://thinkphp.cn/blog/2',302);
可以在重定向的时候通过session闪存数据传值,例如
$this->redirect('News/category', ['cate_id' => 2], 302, ['data' => 'hello']);
使用redirect助手函数还可以实现更多的功能,例如可以记住当前的URL后跳转
redirect('News/category')->remember();
需要跳转到上次记住的URL的时候使用:
redirect()->restore();
参考手册:thinkphp重定向
使用Redirect跳转
实现方法
[HttpGet("/Redirect")] public IActionResult Redirect(string url, string title = null, bool sucess = true) { ViewRedirect model = new ViewRedirect(); model.Url = url.IsNullOrEmpty() ? "/Index" : url; model.IsSucess = sucess; if (model.IsSucess) { model.Title = title.IsNullOrEmpty() ? "操作成功" : title; }else { model.Title = title.IsNullOrEmpty() ? "操作失败" : title; } return View(model); }
示例:
url = $@"/Redirect?url={url}&title=会员注册成功"; return Redirect(url);
显示效果
以上是关于thinkphp5 redirect跳转的主要内容,如果未能解决你的问题,请参考以下文章
ThinkPhp5 数据迁移(think-migration)