php开发中的页面跳转方法总结


Posted in PHP onApril 26, 2015

页面跳转可能是由于用户单击链接、按钮等触发的,也可能是系统自动产生的。页面自动跳转在WEB开发中经常用到,而且根据需求可以采用不同的跳转方式,比如提示操作信息后延时跳转等, 本文总结了WEB开发中常见的几种页面跳转方法。

PHP header()函数跳转

PHP的header()函数非常强大,其中在页面url跳转方面也调用简单,使用header()直接跳转到指定url页面,这时页面跳转是302重定向:

$url = "https://3water.com/";  
header( "Location: $url" );

我们有可能会遇到特殊的跳转时,比如网站改版有个页面地址要做301重定向,当然你可以通过web配置rewrite来实现,但现在我要告诉大家,可以使用php的header()函数做301跳转,代码如下:

//301跳转 
header( "HTTP/1.1 301 Moved Permanently" );   
header( "Location: $url" );

Meta设置跳转

html中的meta信息里可以直接设置跳转,可以设置跳转延迟时间和跳转url,经常应用,比如支付完了告诉用户支付成功并跳转到订单页面,代码非常简单,就在<head>中加上一句:

<meta http-equiv="refresh" content="5;url=https://3water.com">

以上代码表示在5秒钟后页面会自动跳转到https://3water.com。

Javascript跳转

Javascript跳转也非常简单,直接一句话:

<script> 
window.location.href="https://3water.com"; 
</script>

注意,上面这段代码直接跳转后,在目标页面地址中是获取不到来路(referer,也叫来源)的,在实际项目中,遇到有客户要求跳转要带来路(即目标网页可以获取到页面从哪里跳转来的),这时,我们可以用javascript模拟一次点击,然后跳转就满足了客户的需求。
 

<script> 
//有来路 
var aa = document.createElement("a"); 
aa.setAttribute("href","https://3water.com"); 
var bodys=document.getElementsByTagName("body")[0]; 
bodys.appendChild(aa); 
aa.click(); 
</script>

当然,实际开发中我们可以把后面两种方式整合到PHP中去,便于适用各种跳转需求。

以上所述就是本文的全部内容了,希望大家能够喜欢。

PHP 相关文章推荐
PHP编程中八种常见的文件操作方式
Nov 19 PHP
PHP 巧用数组降低程序的时间复杂度
Jan 01 PHP
手把手教你打印出PDF(关于fpdf的简单应用)
Jun 25 PHP
从PHP $_SERVER相关参数判断是否支持Rewrite模块
Sep 26 PHP
简单说说PHP优化那些事(经验分享)
Nov 27 PHP
php构造函数的继承方法
Feb 09 PHP
php加密解密字符串示例
Oct 13 PHP
php 输出json及显示json中的中文汉字详解及实例
Nov 09 PHP
PHP实现的统计数据功能详解
Dec 06 PHP
PHP实现根据数组的值进行分组的方法
Apr 20 PHP
PHP之多条件混合筛选功能的实现方法
Oct 09 PHP
thinkphp框架表单数组实现图片批量上传功能示例
Apr 04 PHP
如何使用jQuery+PHP+MySQL来实现一个在线测试项目
Apr 26 #PHP
PHP开启opcache提升代码性能
Apr 26 #PHP
php格式化电话号码的方法
Apr 24 #PHP
php生成年月日下载列表的方法
Apr 24 #PHP
PHP传参之传值与传址的区别
Apr 24 #PHP
php获取访问者IP地址汇总
Apr 24 #PHP
php实现的RSS生成类实例
Apr 23 #PHP
You might like
PHP 字符串加密函数(在指定时间内加密还原字符串,超时无法还原)
2010/04/28 PHP
php顺序查找和二分查找示例
2014/03/27 PHP
php截取html字符串及自动补全html标签的方法
2015/01/15 PHP
PHP多维数组转一维数组的简单实现方法
2015/12/23 PHP
IE bug table元素的innerHTML
2010/01/11 Javascript
读jQuery之五(取DOM元素)
2011/06/20 Javascript
javascript异步编程代码书写规范Promise学习笔记
2015/02/11 Javascript
jQuery中extend函数详解
2015/02/13 Javascript
JavaScript从数组中删除指定值元素的方法
2015/03/18 Javascript
基于javascript如何传递特殊字符
2015/11/30 Javascript
Javascript实现base64的加密解密方法示例
2017/06/27 Javascript
React教程之封装一个Portal可复用组件的方法
2018/01/02 Javascript
webpack分离css单独打包的方法
2018/06/12 Javascript
vue如何进行动画的封装
2018/09/26 Javascript
Vue核心概念Action的总结
2019/01/18 Javascript
微信小程序—setTimeOut定时器的问题及解决
2019/07/26 Javascript
详解webpack打包vue项目之后生成的dist文件该怎么启动运行
2019/09/06 Javascript
js函数柯里化的方法和作用实例分析
2020/04/11 Javascript
微信小程序实现打卡签到页面
2020/09/21 Javascript
js加减乘除精确运算方法实例代码
2021/01/17 Javascript
Python 过滤字符串的技巧,map与itertools.imap
2008/09/06 Python
Python版的文曲星猜数字游戏代码
2013/09/02 Python
pytorch + visdom CNN处理自建图片数据集的方法
2018/06/04 Python
Python面向对象类的继承实例详解
2018/06/27 Python
Python实现打印实心和空心菱形
2019/11/23 Python
Python 内置函数globals()和locals()对比详解
2019/12/23 Python
HTML5 weui使用笔记
2019/11/21 HTML / CSS
Asics日本官网:鬼冢八喜郎创立的跑鞋运动品牌
2017/10/18 全球购物
竞选班干部演讲稿600字
2014/08/20 职场文书
以幸福为主题的活动方案
2014/08/22 职场文书
红领巾心向党演讲稿
2014/09/10 职场文书
医院领导班子查摆问题对照检查材料思想汇报
2014/10/08 职场文书
关于有小孩的离婚协议书
2014/10/26 职场文书
成品仓库管理员岗位职责
2015/04/09 职场文书
2015年教研工作总结
2015/05/23 职场文书
Flask使用SQLAlchemy实现持久化数据
2021/07/16 Python