当前位置: 首页 > 图文教程 > 网络编程 > PHP > php的header和asp中的redirect比较

PHP
php中目录,文件操作详谈
理解PHP5中static和const关键字的区别
php中支持多种编码的中文字符串截取函数!
关于BIG5-HKSCS的解决方法
自动生成文章摘要的代码[PHP 版本]
完美解决dedecms中的[html][/html]和[code][/code]问题
不错的dedecms修改实用集锦
PHP的分页功能
dedecms中显示数字验证码的修改方法
dedecms中常见问题修改方法总结
用PHP写的MySQL数据库用户认证系统代码
收集的PHP中与数组相关的函数
PHP中动态显示签名和ip原理
实现dedecms全站URL静态化改造的代码
解决dede生成静态页和动态页转换的一些问题,及火车采集入库生成动态的办法
在任意字符集下正常显示网页的方法一
在任意字符集下正常显示网页的方法二(续)
经典的PHPer为什么被认为是草根?
dedecms系统常用术语汇总
一篇入门的php Class 文章

PHP 中的 php的header和asp中的redirect比较


出处:互联网   整理: 软晨网(RuanChen.com)   发布: 2009-09-13   浏览: 225 ::
收藏到网摘: n/a

asp中实现重定向是用response.redirect 函数:
用法一例:
response.redirect "../test.asp"
php中也有类似函数:header
用法一例:
header("location:../test.php");
但是两者是有区别的.
asp的redirect函数可以在向客户发送头文件后起作用.

<html><head></head><body>
<%response.redirect "../test.asp"%>
</body></html>
查是php中下例代码会报错:
<html><head></head><body>
<?
header("location:../test.php");
?>
</body></html>
只能这样:
<?
header("location:../test.php");
?>
<html><head></head><body>...</body></html>
即header函数之前不能向客户发送任何数据.
再看下面一例:
asp中
<html><head></head><body>
<%
response.redirect "../a.asp"
response.redirect "../b.asp"
%>
</body></html>
结果是重定向a.asp文件.
php呢?
<?
header("location:../a.php");
header("location:../b.php");
?>
<html><head></head><body></body></html>
我们发现它重定向b.php.
原来在asp中执行redirect后不会再执行后面的代码.
而php在执行header后,继续执行下面的代码.
在这方面上php中的header重定向不如asp中的重定向.有时我们要重定向后,不能执行后面的代码:
一般地我们用
if(...)
header("...");
else
{
...
}
但是我们可以简单的用下面的方法:
if(...)
{ header("...");break;}