ThinkPHP获取上一页面的url
最近项目有一个需求,需要从一个页面跳转到编辑界面,然后保存后返回原来的界面。由于正常的保存成功只能返回到编辑对应的模块总览界面,所以,要实现跳转回上一界面就必须获取到上一界面的url。
使用ThinkPHP内置对象
受到ThinkPHP内置方法success默认跳转的启发,这里我选择用 $_SERVER['HTTP_REFERER'] 来获取上一界面的url。
|
|
获取上一界面url
编辑的大概步骤是:点击编辑按钮,跳转到编辑界面,点击保存,触发 update 函数,跳转回上一界面。
C层 edit
|
|
url的传递
由于update前还有一步edit,所以需要把上一界面的url传到v层,再从v层传递回来,由update方法接收一下。
C层 update
|
|
注意:保存成功跳转时,不能使用 url() 助手函数来辅助生成url,因为我们这里获取到的 $pre_url 就是完整的url。
小结
C层 Request::instance()后,然后打印出它获取到的信息,会发现我们使用的对象就在里面。善于使用断点,会让你的编程省很多时间。