>  기사  >  백엔드 개발  >  PHP 헤더 기능을 사용하는 방법

PHP 헤더 기능을 사용하는 방법

青灯夜游
青灯夜游원래의
2019-02-27 11:56:3111615검색

header() 함수는 원시 HTTP 헤더를 보내는 데 사용할 수 있는 PHP에 내장된 함수입니다. 다음 글에서는 header() 함수를 소개하고 여러 header() 함수의 사용법을 소개하겠습니다. [동영상 튜토리얼 추천 : PHP 튜토리얼]

PHP 헤더 기능을 사용하는 방법

header() 함수

PHP 헤더() 함수의 역할: HTTP 헤더를 원래의 형태로 클라이언트나 브라우저에 보냅니다. 원시 데이터는 HTML, XML, JSON 또는 기타 출력이 브라우저나 클라이언트로 전송되기 전에 서버에서 수행한 요청(특히 HTTP 요청)과 함께 헤더 정보로 전송됩니다. HTTP 헤더는 메시지 본문으로 전송된 개체에 대한 필수 정보(보다 정확하게는 요청 및 응답에 대한 정보)를 제공합니다.

기본 문장 패턴:

header( $header, $replace = TRUE, $http_response_code )

매개변수: header() 함수는 세 개의 매개변수를 허용합니다.

$header: 제목 문자열을 저장하는 데 사용됩니다. 헤더 호출에는 두 가지 유형이 있습니다. 첫 번째는 전송될 HTTP 상태 코드를 결정하는 "HTTP /" 문자열로 시작하고, 두 번째는 필수 매개변수인 "Location:"으로 시작합니다.

$replace: 제목이 이전 제목을 대체하거나 생략할 수 있는 두 번째 제목을 추가해야 함을 나타내는 데 사용됩니다. 기본값은 True(교체)입니다. $replace 값이 False이면 동일한 유형의 여러 헤더가 강제로 사용됩니다.

$http_response_code: HTTP 응답 코드를 지정된 값(PHP 4.3 이상)으로 강제 지정하는 데 사용되며 생략 가능합니다.

Header() 함수 사용법

1. URL로 리다이렉트하고 해당 페이지로 점프합니다

<?php 
header("Location: http://www.php.cn"); 
exit; 
?>

점프 시간을 조정하고 특정 시간 이후에 점프가 실행되도록 설정할 수도 있습니다

<?php 
header("Refresh: 5; url= http://www.php.cn"); 
exit; 
?>

2. 캐시 제어를 설정하여 브라우저의 캐시를 제어하세요

<?php 
header("Expires: Mon, 26 Jul 1997 05:00:00 GMT");//内容过期时间 
header("Last-Modified: " . gmdate("D, d M Y H:i:s") . "GMT");//标记内容最后修改时间
header("Cache-Control: no-cache, must-revalidate");//强制不缓存
header("Pragma: no-cache");//禁止本页被缓存
?> 
  
<html> 
    <body> 
        <p>Hello World!</p> 
        <?php 
            var_dump(headers_list()); 
        ?> 
    </body> 
</html>

출력:

PHP 헤더 기능을 사용하는 방법

예제 설명:

위의 예는 캐싱을 비활성화하는 것을 의미하며, 이는 브라우저가 캐싱을 방지하고 브라우저가 이 페이지를 요청하도록 허용하는 데 도움이 될 수 있습니다. 매번 최신 버전의 콘텐츠를 받으려면 항상 서버로 이동하세요.

참고: 헤더 삽입 공격을 방지하기 위해 (PHP 4.4부터) 한 번에 하나의 헤더만 보낼 수 있으므로 이 예제에서는 header() 함수가 여러 번 사용되었습니다.

3 네트워크 파일의 유형, 문자 인코딩, 언어 및 콘텐츠 길이를 설정합니다.

//设置简体中文
header("Content-Language: charset=zh-cn");

// 设置内容长度
header(&#39;Content-Length: 39344&#39;);

//设置页面文件是HTML类型,字符集是GB2312,即简体中文
header("Content-type: text/html; charset=GB2312");

//设置页面文件是HTML类型,字符集是utf-8
header("content-type:text/html;charset=utf-8");

4. HTTP 상태 보내기

다음은 몇 가지 일반적인 HTTP 상태입니다.

<?php
//200 正常状态
header(&#39;HTTP/1.1 200 OK&#39;);

// 301 永久重定向,记得在后面要加重定向地址 Location:$url
header(&#39;HTTP/1.1 301 Moved Permanently&#39;);

// 设置页面304 没有修改
header(&#39;HTTP/1.1 304 Not Modified&#39;);

//401 未经授权:访问由于凭据无效被拒绝,需要进行登录
header(&#39;HTTP/1.1 401 Unauthorized&#39;);

// 403 禁止访问
header(&#39;HTTP/1.1 403 Forbidden&#39;);
 
// 404 错误
header(&#39;HTTP/1.1 404 Not Found&#39;);
// 500 错误
header(&#39;HTTP/1.1 500 Internal Server Error&#39;);
?>

5. 확인 및 표시 정보

<?php
header(&#39;HTTP/1.1 401 Unauthorized&#39;);
header(&#39;WWW-Authenticate: Basic realm="登录信息"&#39;);
echo &#39;显示的信息!&#39;;
?>

6. 스트리밍 파일이나 파일 다운로드에 사용할 수 있는 헤더 파일 유형을 설정하세요

header(&#39;Content-Type: application/octet-stream&#39;); //设置内容类型
header(&#39;Content-Disposition: attachment; filename="example.zip"&#39;); //设置MIME用户作为附件
header(&#39;Content-Transfer-Encoding: binary&#39;); //设置传输方式
header(&#39;Content-Length: &#39;.filesize(&#39;example.zip&#39;)); //设置内容长度

위 내용은 이 글의 전체 내용입니다. 모든 분들의 학습에 도움이 되기를 바랍니다. . 더 흥미로운 내용을 보려면 PHP 중국어 웹사이트의 관련 튜토리얼 열을 주의 깊게 살펴보세요! ! !

위 내용은 PHP 헤더 기능을 사용하는 방법의 상세 내용입니다. 자세한 내용은 PHP 중국어 웹사이트의 기타 관련 기사를 참조하세요!

성명:
본 글의 내용은 네티즌들의 자발적인 기여로 작성되었으며, 저작권은 원저작자에게 있습니다. 본 사이트는 이에 상응하는 법적 책임을 지지 않습니다. 표절이나 침해가 의심되는 콘텐츠를 발견한 경우 admin@php.cn으로 문의하세요.