header() 함수는 원시 HTTP 헤더를 보내는 데 사용할 수 있는 PHP에 내장된 함수입니다. 다음 글에서는 header() 함수를 소개하고 여러 header() 함수의 사용법을 소개하겠습니다. [동영상 튜토리얼 추천 : 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 4.4부터) 한 번에 하나의 헤더만 보낼 수 있으므로 이 예제에서는 header() 함수가 여러 번 사용되었습니다.
3 네트워크 파일의 유형, 문자 인코딩, 언어 및 콘텐츠 길이를 설정합니다.
//设置简体中文 header("Content-Language: charset=zh-cn"); // 设置内容长度 header('Content-Length: 39344'); //设置页面文件是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('HTTP/1.1 200 OK'); // 301 永久重定向,记得在后面要加重定向地址 Location:$url header('HTTP/1.1 301 Moved Permanently'); // 设置页面304 没有修改 header('HTTP/1.1 304 Not Modified'); //401 未经授权:访问由于凭据无效被拒绝,需要进行登录 header('HTTP/1.1 401 Unauthorized'); // 403 禁止访问 header('HTTP/1.1 403 Forbidden'); // 404 错误 header('HTTP/1.1 404 Not Found'); // 500 错误 header('HTTP/1.1 500 Internal Server Error'); ?>
5. 확인 및 표시 정보
<?php header('HTTP/1.1 401 Unauthorized'); header('WWW-Authenticate: Basic realm="登录信息"'); echo '显示的信息!'; ?>
6. 스트리밍 파일이나 파일 다운로드에 사용할 수 있는 헤더 파일 유형을 설정하세요
header('Content-Type: application/octet-stream'); //设置内容类型 header('Content-Disposition: attachment; filename="example.zip"'); //设置MIME用户作为附件 header('Content-Transfer-Encoding: binary'); //设置传输方式 header('Content-Length: '.filesize('example.zip')); //设置内容长度
위 내용은 이 글의 전체 내용입니다. 모든 분들의 학습에 도움이 되기를 바랍니다. . 더 흥미로운 내용을 보려면 PHP 중국어 웹사이트의 관련 튜토리얼 열을 주의 깊게 살펴보세요! ! !
위 내용은 PHP 헤더 기능을 사용하는 방법의 상세 내용입니다. 자세한 내용은 PHP 중국어 웹사이트의 기타 관련 기사를 참조하세요!

thesecrettokeepingAphp-poweredwebsiterunningsmoothlydlyUnderHeavyloadInvolvesEveralKeyStrategies : 1) ubstractOpCodeCachingWithOpCacheTecescripteExecutionTime, 2) usedatabasequeryCachingwithRedSendatabaseload, 3) LeverAgeCdnslikeCloudforforporerververforporporpin

Code는 코드가 더 명확하고 유지 관리하기 쉽기 때문에 의존성 주입 (DI)에 관심을 가져야합니다. 1) DI는 클래스를 분리하여 더 모듈 식으로 만들고, 2) 테스트 및 코드 유연성의 편의성을 향상시키고, 3) DI 컨테이너를 사용하여 복잡한 종속성을 관리하지만 성능 영향 및 순환 종속성에주의를 기울이십시오. 4) 모범 사례는 추상 인터페이스에 의존하여 느슨한 커플 링을 달성하는 것입니다.

예, PPAPPLICATIONISPOSSIBLEADESLESTION.1) INVERECINGUSINGAPCUTERODUCEDABASELOAD.2) INCODINCEDEXING, ENGICIONEQUERIES 및 CONNECTIONPOULING.3) 향상된 보드 바이어링, 플로 팅 포르코 잉을 피하는 최적화 된 APPCUTERODECEDATABASELOAD.2)

theKeyStrategiesToSINCINTIFILINTINTIFILINTINTHPPORMATIONPERFORMANCEARE : 1) USEOPCODECACHING-CCHACHETEDECUTECUTINGTIME, 2) 최적화 된 ABESINSTEMENTEMENDSTEMENTEMENDSENDSTATEMENTENDS 및 PROPERINDEXING, 3) ConfigureWebSerVERSLIKENGINXXWITHPMFORBETPERMERCORMANCES, 4)

aphpdectionenceindectioncontainerisatoolthatmanagesclassdependencies, 향상 Codemodularity, testability 및 maintainability.itactAsacentralHubForCreatingAndingDinjectingDingingDingingdecting.

대규모 응용 프로그램의 경우 SELLENCIONINGESS (DI)를 선택하십시오. ServicElocator는 소규모 프로젝트 또는 프로토 타입에 적합합니다. 1) DI는 생성자 주입을 통한 코드의 테스트 가능성과 모듈성을 향상시킵니다. 2) Servicelocator는 센터 등록을 통해 서비스를 얻습니다. 이는 편리하지만 코드 커플 링이 증가 할 수 있습니다.

phPapplicationSCanBeoptimizedForsPeedandefficiencyby : 1) ENABLEOPCACHEINPHP.INI, 2) PREPAREDSTATEMENTSWITHPDOFORDATABASEQUERIES 사용

phpeMailValidationInvoLvestHreesteps : 1) formatValidationUsingRegularexpressionsTochemailformat; 2) dnsValidationToErethedomainHasaValidMxRecord; 3) smtpvalidation, theSTHOROUGHMETHOD, theCheckSiftheCefTHECCECKSOCCONNECTERTETETETETETETWERTETWERTETWER


핫 AI 도구

Undresser.AI Undress
사실적인 누드 사진을 만들기 위한 AI 기반 앱

AI Clothes Remover
사진에서 옷을 제거하는 온라인 AI 도구입니다.

Undress AI Tool
무료로 이미지를 벗다

Clothoff.io
AI 옷 제거제

Video Face Swap
완전히 무료인 AI 얼굴 교환 도구를 사용하여 모든 비디오의 얼굴을 쉽게 바꾸세요!

인기 기사

뜨거운 도구

메모장++7.3.1
사용하기 쉬운 무료 코드 편집기

SecList
SecLists는 최고의 보안 테스터의 동반자입니다. 보안 평가 시 자주 사용되는 다양한 유형의 목록을 한 곳에 모아 놓은 것입니다. SecLists는 보안 테스터에게 필요할 수 있는 모든 목록을 편리하게 제공하여 보안 테스트를 더욱 효율적이고 생산적으로 만드는 데 도움이 됩니다. 목록 유형에는 사용자 이름, 비밀번호, URL, 퍼징 페이로드, 민감한 데이터 패턴, 웹 셸 등이 포함됩니다. 테스터는 이 저장소를 새로운 테스트 시스템으로 간단히 가져올 수 있으며 필요한 모든 유형의 목록에 액세스할 수 있습니다.

맨티스BT
Mantis는 제품 결함 추적을 돕기 위해 설계된 배포하기 쉬운 웹 기반 결함 추적 도구입니다. PHP, MySQL 및 웹 서버가 필요합니다. 데모 및 호스팅 서비스를 확인해 보세요.

ZendStudio 13.5.1 맥
강력한 PHP 통합 개발 환경

SublimeText3 중국어 버전
중국어 버전, 사용하기 매우 쉽습니다.