php中的header函数
<?phpheader("Location:page1.php");header("Location:page2.php");?>第二个<?php$set=1;if($s...
<?php
header("Location:page1.php");
header("Location:page2.php");?>
第二个
<?php
$set=1;
if($set==1)
header("Location:page.php");
else
header("Location:page.php");?>
location对应的文件什么时候得到的?编译时还是运行时?
跳转到本地文件。有两个header(“location”)时但location怎么知道跳转到哪个?location中的值什么时候得到?写错了,第二个程序中分别是page1.php和page2.php,两个程序运行完跳转到不同文件 展开
header("Location:page1.php");
header("Location:page2.php");?>
第二个
<?php
$set=1;
if($set==1)
header("Location:page.php");
else
header("Location:page.php");?>
location对应的文件什么时候得到的?编译时还是运行时?
跳转到本地文件。有两个header(“location”)时但location怎么知道跳转到哪个?location中的值什么时候得到?写错了,第二个程序中分别是page1.php和page2.php,两个程序运行完跳转到不同文件 展开
5个回答
展开全部
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.
---------------------
这个答案,你满意不?:)
是为了跳转到其它页面。当然是运行到它时才跳过去。
编译时还是运行时执行?这个问题问在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.
---------------------
这个答案,你满意不?:)
2015-05-20 · 知道合伙人教育行家
关注
展开全部
1、函数描述:
header() 函数向客户端发送原始的 HTTP 报头。
2、函数语法:
header(string,replace,http_response_code)
3、函数参数:
①string:必需。规定要发送的报头字符串;
②replace :可选。指示该报头是否替换之前的报头,或添加第二个报头。默认是 true(替换)。false(允许相同类型的多个报头);
③http_response_code:可选。把 HTTP 响应代码强制为指定的值。
4、函数举例:
<?php
// Date in the past
header("Expires: Mon, 26 Jul 1997 05:00:00 GMT");
header("Cache-Control: no-cache");
header("Pragma: no-cache");
?>
<html>
<body>
header() 函数向客户端发送原始的 HTTP 报头。
2、函数语法:
header(string,replace,http_response_code)
3、函数参数:
①string:必需。规定要发送的报头字符串;
②replace :可选。指示该报头是否替换之前的报头,或添加第二个报头。默认是 true(替换)。false(允许相同类型的多个报头);
③http_response_code:可选。把 HTTP 响应代码强制为指定的值。
4、函数举例:
<?php
// Date in the past
header("Expires: Mon, 26 Jul 1997 05:00:00 GMT");
header("Cache-Control: no-cache");
header("Pragma: no-cache");
?>
<html>
<body>
已赞过
已踩过<
评论
收起
你对这个回答的评价是?
展开全部
看不懂你说的是什么。
location:URI
location 后面跟着的是网址,可以是绝对网址,也可以是相对的。 比如可以是
header("location:http://www.shenmayouxi.com/");
location:URI
location 后面跟着的是网址,可以是绝对网址,也可以是相对的。 比如可以是
header("location:http://www.shenmayouxi.com/");
更多追问追答
追问
跳转到本地文件。有两个header(“location”)时但location怎么知道跳转到哪个?location中的值什么时候得到?
追答
当然是最后一个了。
就像赋值变量一样。
header 发出的是响应头
已赞过
已踩过<
评论
收起
你对这个回答的评价是?
展开全部
运行到条件的时候跳转 ,也就是运行时跳转。
已赞过
已踩过<
评论
收起
你对这个回答的评价是?
展开全部
php是解释型语言,没有编译这个概念。
已赞过
已踩过<
评论
收起
你对这个回答的评价是?
推荐律师服务:
若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询