thinkphp 5.0重定向与跳转
在应用开发中,经常会遇到一些带有提示信息的跳转页面,例如操作成功或者操作错误页面,并且自动跳转到另 外一个目标页面。系统的 \think\Controller 类内置了两个跳转方法 success 和 error ,用于页面跳转提示,success 和 error 方法都可以对应的模板,默认的设置是两个方法对应的模板都是:dispatch_jump.tpl,可以在config.php里面修改配置,让它跳转到其他文件。
namespace app\index\controller; //命名空间
use think\Controller; //必须使用controller类,success和error为controller类的方法
use app\index\model\User as User; //使用模板user,模板名对应数据表名
class Redirect extends Controller //继承controller类
{
public function index(){
/* $user=User::get(21);
echo $user->name;*/
$user=new User();
$result=$user->save([ //插入数据
'name' => '慕容',
'email' => 'murong@qq.com',
'birthday' => '2012-1-1'
]);
if($result){
//设置成功后跳转页面的地址,默认的返回页面是$_SERVER['HTTP_REFERER']
// $this->success('新增成功','index/index'); //新增成功,3秒后跳转
// $this->success('新增成功','/index.php/index/index1');
// $this->redirect('http://www.baidu.com'); //重定向到百度首页
$this->redirect('/test/test',['name','tom']); //传参数,跳转没有等待时间,直接跳转
}else{
//错误页面的默认跳转页面是返回前一页,通常不需要设置
$this->error('新增失败');
}
}
}
Test.php
namespace app\test\controller;
use think\Request;
class Test
{
public function index(){
$request=Request::instance();
dump($request->param());
}
}