PHP의 헤더 위치

Subodh Poudel 2023년1월30일
  1. Header()함수 및 PHP 구문 소개
  2. PHP에서location:헤더 문자열과 함께header()함수 사용
PHP의 헤더 위치

이 기사에서는header()함수의 개념과 PHP 구문을 소개합니다. PHP에서 헤더를 작성하는 규칙을 다룹니다. 이 메소드는Content-TypeContent-Disposition헤더에서도 작동합니다.

이 기사에서는location:헤더 문자열도 소개합니다. PHP에서 위치 헤더의 사용법과 본질을 설명합니다. 이 기사는 헤더 위치가 응답 코드를 보내고 브라우저를 다른 페이지로 리디렉션하는 방법을 보여줍니다.

Header()함수 및 PHP 구문 소개

header()함수는 원시 HTTP 헤더를 클라이언트에 보낼 수있는 내장 PHP 함수입니다. 전송 된 헤더는 원시 형식입니다. 출력을 보내기 전에header()함수를 호출해야합니다. HTML 태그 또는 PHP 양식에서 보낸 출력과 같은 모든 형식의 출력은 헤더 정보를 보내기 전에 삭제해야합니다. 따라서 출력 전에 서버가 브라우저로 보내는 정보를 제어 할 수 있습니다.

header()함수의 구문은header(string,replace,http_response_code);입니다. 이 함수는 세 개의 매개 변수를받습니다. 첫 번째 인수는 헤더 문자열입니다. 두 가지 유형의 헤더 문자열이 있습니다. 첫 번째 유형은HTTP/로 시작하는 문자열입니다. 브라우저로 보낼 HTTP 코드를 지정합니다. 헤더 문자열의 두 번째 유형은 브라우저를 지정된 위치로 리디렉션하는location:헤더입니다. 함수의 다음 매개 변수는 부울 값을 나타내는replace입니다. 헤더가 이전의 유사한 헤더를 대체해야하는지 여부를 결정하는 선택적 매개 변수입니다. 세 번째 매개 변수 인http_response code도 HTTP 응답 코드를 지정된 값으로 강제하는 선택적 매개 변수입니다.

예를 들어,header()함수를 만들고 헤더 문자열을Content-Type으로 사용합니다. Content-Type의 값을application/pdf로 씁니다. 다시header()함수를 만듭니다. 이번에는 헤더 문자열을Content-Disposition으로 작성합니다. 문자열 값을attachment로 지정하십시오. 그 뒤에 세미콜론을 잊지 마세요. 세미콜론 뒤에 다른 속성filename을 쓰고 파일 이름을download.pdf로 제공합니다.

다음 스크립트를 실행하면 다운로드 대화 상자가 나타납니다. download.pdf라는pdf파일을 다운로드하라는 메시지가 표시됩니다. 첫 번째 헤더는 파일이pdf형식이어야 함을 나타내고 두 번째 헤더는 파일의 파일 이름을 나타내며 브라우저가 파일을 저장하기위한 대화 상자를 표시하도록합니다.

예제 코드 :

#php 7.x
<?php
header('Content-Type: application/pdf'); 
header('Content-Disposition: attachment; filename="downloaded.pdf"');
?>

PHP에서location:헤더 문자열과 함께header()함수 사용

PHP에서location:헤더 문자열과 함께header()함수를 사용할 수 있습니다. 헤더 문자열은 웹 페이지를 지정된 위치로 리디렉션합니다. 일반적으로 웹 페이지에서 입력을 제출 한 후 사용자를 특정 페이지로 리디렉션하는 데 사용됩니다. 예를 들어, 사용자가 로그인하는 동안 올바른 자격 증명을 입력하면 헤더 위치를 사용하여 홈페이지로 리디렉션 할 수 있습니다. header()함수에서 부울 값과 응답 코드를 지정할 수 있습니다. 그러나 이러한 매개 변수는 선택 사항입니다. 기본 부울 값은 true이며 이는 이전의 유사한 헤더를 대체 함을 의미합니다. 세 번째 매개 변수로 응답 코드를 제공 할 수도 있습니다. 기본 응답 코드는302입니다. 예를 들어, 배열을 파일에 쓰고 현재 페이지를 파일이 작성되었다는 메시지를 표시하는 다른 페이지로 리디렉션 할 수 있습니다. file_put_contents()함수를 사용하여 파일에 쓸 수 있습니다.

예를 들어$day변수에 배열을 만듭니다. 키를weathertime으로 만들고 각 값을Sunny1:30 pm으로 만듭니다. 그런 다음file_input_contents()를 사용하고file.txt파일을 첫 번째 매개 변수로 지정하십시오. print_r()함수를 두 번째 매개 변수로 사용하십시오. 변수$day및 부울 값trueprint_r()함수의 매개 변수로 제공하십시오. if조건을 사용하여 전체 표현식을 평가합니다. if블록 내에서header()함수를 사용합니다. 함수 내에서 위치를message.php로 지정합니다. 콜론:을 사용하여 위치를 지정하십시오. location:콜론 사이에 간격이 없어야합니다. PHP 파일message.php를 만듭니다. 파일이 작성되었다는 메시지를 파일에 표시합니다.

위의 예에서 배열은file.txt파일에 기록됩니다. if조건은 참으로 평가되고header()함수는 위치를message.php로 리디렉션합니다. 따라서 출력이 표시됩니다. 주소 표시 줄에서도 변경된 URL을 볼 수 있습니다. 기존 헤더 함수 아래에 다른 헤더 함수가있는 경우 후자는 이전 헤더를 대체합니다. 이는header()함수에서replace옵션의 기본값이 true이기 때문입니다.

코드 예 :

#php 7.x
<?php
$day = array (
    'weather' => 'Sunny',
    'time' => '1:30 pm',
);
if(file_put_contents('file.txt', print_r($day, true))){
    header("location: message.php");
}
?>

출력:

The file has been written.
Subodh Poudel avatar Subodh Poudel avatar

Subodh is a proactive software engineer, specialized in fintech industry and a writer who loves to express his software development learnings and set of skills through blogs and articles.

LinkedIn