_7788 发表于 2006-7-14 11:26:28

为何header("location:")后一定要有die?

在一页面中用header()重定向页面,很奇怪的“失效”
但是要放die()于其后 ,便正常工作
百思不得其解,请板主解答
谢了

涩兔子 发表于 2006-7-14 13:02:10

exit();

因为LZ使用了更多的面向过程的,PHP依旧执行header重定向后的脚本

_7788 发表于 2006-7-14 13:51:18

免子,问题总是由你回答:)

有点不太明白你说的情况,能详细点吗?

涩兔子 发表于 2006-7-14 15:47:06

任何面向过程的语言都是逐条执行的,所以header执行后虽然会跳转到其他的页面,但是header后面的语句依旧在执行,就需要用exit()而不要使用die()

_7788 发表于 2006-7-14 16:13:22

谢了,兔子

tinnyliu 发表于 2006-7-23 02:48:30

补一句,如果你在命令行下打入 php filename.php,就可以看到,页面其实是有完整输出的。
在header("Location: $url"); 之后 exit()一下,php引擎就不处理后面的一堆东西啦,这样不是会更快一点?呵呵。
当然,打不打exit()一句,从客户页面效果看是没啥区别的。

_7788 发表于 2006-7-25 23:14:38

恍然大悟的感觉^___^
页: [1]
查看完整版本: 为何header("location:")后一定要有die?