您的位置:

phpheader200,PHP200

本文目录一览:

Php header()函数语法及使用代码

语法:

复制代码

代码如下:

Void

header(string

$string[,bool

$replace=true

[,

int

$http_response_code)

向客户端发送原始的HTTP报头

需注意:

Header函数必须在任何实际的输出前调用,无论是一般的html标签、文件中空行,或者来自php。就是在这个函数之前不能有任何形式的输出。

参数说明:

参数 描述

string 必需。规定要发送的报头字符串。

replace 可选。指示该报头是否替换之前的报头,或添加第二个报头。

默认是

true(替换)。false(允许相同类型的多个报头)。

http_response_code 可选。把

HTTP

响应代码强制为指定的值。(PHP

4

以及更高版本可用)

常见用法实例:

一、发送服务器状态码

复制代码

代码如下:

header('HTTP/1.0

404

Not

Found');

常用状态码:

状态码 说明

100-199 表示成功接收请求,要求客户端继续提交下一次请求才能完成整个处理过程

200-299 成功接收请求,并已完成整个处理过程,常用200

300-399 未完成请求,客户端需要进一步细化请求,比如,请求的资源已经移动到一个新的地址,常用302,304

400-499 客户端请求有误

常用404

500-599 服务器端出现错误,常用500

详细见:HTTPFTP相应提示信息

二、页面跳转

复制代码

代码如下:

//

立即跳转

header('Location:

');

//

3秒后跳转

header('refresh:3;url=');

3.设置浏览器缓存

强制浏览器不进行缓存!

[code]

//header('Expires:-1');

header('Expires:

Mon,

26

Jul

1997

05:00:00

GMT');

header('Cache-Control:no-cache,must-revalidate');

header('pragma:no-cache');

header('Last-Modified:

'.

date('D,

j

M

Y

H:i:s

T')

);

php动态页面设置了header("Status: 404 Not Found");但返回200状态?

if($id!=1){

header("HTTP/1.0 404 Not Found");

header("Status: 404 Not Found");

exit();

}

或者

if($id!=1){

header("HTTP/1.1 404 Not Found");

header("Status: 404 Not Found");

exit();

}

php header 返回状态吗

面试时很多人问我这个,记录一下   200是ok,  404表示页面未找到.

HTTP协议状态码,调用函数时候只需要将$num赋予一个下表中的已知值就直接会返回状态了。

?PHP 

/** 

* HTTP Protocol defined status codes

* HTTP协议状态码,调用函数时候只需要将$num赋予一个下表中的已知值就直接会返回状态了。

* @param int $num

*/ 

function https($num) { 

$http = array ( 

100 = "HTTP/1.1 100 Continue", 

101 = "HTTP/1.1 101 Switching Protocols", 

200 = "HTTP/1.1 200 OK", 

201 = "HTTP/1.1 201 Created", 

202 = "HTTP/1.1 202 Accepted", 

203 = "HTTP/1.1 203 Non-Authoritative Information", 

204 = "HTTP/1.1 204 No Content", 

205 = "HTTP/1.1 205 Reset Content", 

206 = "HTTP/1.1 206 Partial Content", 

300 = "HTTP/1.1 300 Multiple Choices", 

301 = "HTTP/1.1 301 Moved Permanently", 

302 = "HTTP/1.1 302 Found", 

303 = "HTTP/1.1 303 See Other", 

304 = "HTTP/1.1 304 Not Modified", 

305 = "HTTP/1.1 305 Use Proxy", 

307 = "HTTP/1.1 307 Temporary Redirect", 

400 = "HTTP/1.1 400 Bad Request", 

401 = "HTTP/1.1 401 Unauthorized", 

402 = "HTTP/1.1 402 Payment Required", 

403 = "HTTP/1.1 403 Forbidden", 

404 = "HTTP/1.1 404 Not Found", 

405 = "HTTP/1.1 405 Method Not Allowed", 

406 = "HTTP/1.1 406 Not Acceptable", 

407 = "HTTP/1.1 407 Proxy Authentication Required", 

408 = "HTTP/1.1 408 Request Time-out", 

409 = "HTTP/1.1 409 Conflict", 

410 = "HTTP/1.1 410 Gone", 

411 = "HTTP/1.1 411 Length Required", 

412 = "HTTP/1.1 412 Precondition Failed", 

413 = "HTTP/1.1 413 Request Entity Too Large", 

414 = "HTTP/1.1 414 Request-URI Too Large", 

415 = "HTTP/1.1 415 Unsupported Media Type", 

416 = "HTTP/1.1 416 Requested range not satisfiable", 

417 = "HTTP/1.1 417 Expectation Failed", 

500 = "HTTP/1.1 500 Internal Server Error", 

501 = "HTTP/1.1 501 Not Implemented", 

502 = "HTTP/1.1 502 Bad Gateway", 

503 = "HTTP/1.1 503 Service Unavailable", 

504 = "HTTP/1.1 504 Gateway Time-out"  

); 

header($http[$num]); 

?

@header('HTTP/1.0 404 Not Found');

php gd库 Header("Content-type: image/jpg") 和$img=imagecreatetruecolor(200,200) 的先后顺序有关系吗

没有关系

一般header放在imagejpeg或imagepng 前就行,这两个函数是输出图片内容的。header要在所有输出内容前发送

imagecreatetruecolor这个是创建图片(在内存中),处理图片的过程都还在服务器端的代码中,并没有输出。

不过处理过程中要注意错误处理,如果header前代码发生了错误,并且错误发送到浏览器了,那header就发不出去了。不过这个时候代码也是不成功的,需要修复错误了