Ⅰ php中的header函数
header("Location:page.php");
是为了跳转到其它页面。当然是运行到它时才跳过去。
编译时还是运行时执行?这个问题问在include 与 require合适。。。。
注意区分它与 include 与 require区别
另外补充回答:
==================
页面跳转并不能用来阻止程序中其他语句的执行?
页面已经跳转了,以前的页面header语句后的逻辑代码是会继续执行的,但是输出语句是不会执行的。
你可以拿个简单的例子做实验:
-----------------------------
文件 a.php
<?php
header('Location:b.php');
echo '我是跳转前的页面a.php!';
?>
文件 b.php
<?php
echo '我是跳转后的页面b.php!';
?>
运行a.php,发现输出的是 "我是跳转后的页面b.php"
如果有二个header以上的header 则以最后一个为准。
同样上面的例子:
-----------------------------
文件 a.php
<?php
header('Location:b.php');
header('Location:c.php');
echo '我是跳转前的页面a.php!';
?>
运行a.php,会跳到c.php
再来个例子证明,逻辑代码是会执行的。
--------
<?php
header('Location:b.php');
$a = 'c.php';
header('Location:'.$a);
echo '我是aa.php';
?>
结果跳到了c.php,证明$a='c.php'执行了。
---------------------
总结:
header后,想禁止后面语句执行,你可以加上exit; 或return;
如下
<?php
header('Location:b.php');
return;
//exit;
$a = 'c.php';
header('Location:'.$a);
echo '我是a.php';
?>
则只会跳到b.php页面,不会到c.php.
---------------------
这个答案,你满意不?:)
Ⅱ php header跳转失败
在PHP中用header("location:test.php")进行跳转要注意以下几点,有助于解决一些新手经常遇到的问题 1、location和“:”号间不能有空格,否则会出错。 2、在用header前不能有任何的输出。 3、header后的PHP代码还会被执行。