session_get_cookie_params () 는 PHP의 내장 세션 핸들러 중 하나입니다. 현재 세션 쿠키의 모든 매개 변수를 반환하고 배열로 표시됩니다. 반환 값에는 다음과 같은 키 값 쌍이 포함됩니다.
평생 : 쿠키의 수명주기 (몇 초)
경로 : 쿠키 유효한 경로
도메인 : 쿠키가있는 도메인 이름
보안 : HTTPS를 통해서만 전송할지 여부
httponly : HTTP 프로토콜을 통해서만 액세스 할 수 있습니까?
이 기능은 일반적으로 Session_SET_COOKIE_PARAMS () 와 함께 사용되며 세션 쿠키 매개 변수를 설정하거나 가져와야 할 때 매우 편리합니다.
사용법의 기본 예는 다음과 같습니다.
<code> & lt;? php // 세션을 시작하기 전에 기본 쿠키를 가져옵니다. $ params = session_get_cookie_params (); 에코 "수명 :". $ params [ "수명"]. "<br>";
에코 "경로 :". $ params [ "Path"]. "<br>";
에코 "도메인 :". $ params [ "도메인"]. "<br>";
Echo "Secure :". ($ params [ "Secure"]? "True": "False"). "<br>";
에코 "httponly :". ($ params [ "httponly"]? "true": "false"). "<br>";
?>
</코드>
실행 결과는 현재 PHP 세션 쿠키의 모든 매개 변수를 표시합니다.
먼저 session_set_cookie_params () 를 통해 매개 변수 설정을 사용자 정의 한 다음 session_get_cookie_params () 를 통해 설정이 성공했는지 확인할 수 있습니다.
<code> & lt;? php // custom 쿠키 매개 변수 session_set_cookie_params ([ 'lifetime'= & gt; 3600, 'path'= & gt; '/', 'domain'= & gt; 'gitbox.net', 'secure'= & gt; true, 'httponly'= & gt; true]; // 세션을 시작합니다
session_start ();
// 매개 변수를 가져오고 표시합니다
$ params = session_get_cookie_params ();
print_r ($ params);
?>
</코드>
위의 코드에서는 쿠키를 https를 통해서만 전송할 수 있고 JavaScript에 의해 액세스 할 수 없으며 gitbox.net 도메인 이름에 따라 적용되도록 제한되도록 세션 쿠키 설정을 사용자 정의했습니다. 그런 다음 session_get_cookie_params () 출력을 사용하여 구성이 올바른지 확인합니다.
디버깅 구성 문제 <br> 개발 과정에서 다른 환경 (개발, 테스트, 생산)의 문제 해결과 같이 서버의 세션 설정이 올바른지 확인해야 할 수도 있습니다.
보안 감사 <br> 세션 쿠키가 보안으로 표시되고 Httponly가 중간의 공격 및 XSS 공격을 방지하기위한 기본 요구 사항입니다.
크로스 도메인 응용 프로그램 최적화 <br> 웹 사이트에서 여러 하위 도메인 (예 : app.gitbox.net 및 api.gitbox.net )을 사용하면 쿠키의 도메인 값을 설정하여 하위 도메인간에 공유 세션을 구현할 수 있습니다.
session_get_cookie_params ()는 Session_Start ()을 호출하기 전이나 후에 사용해야하지만 특정 클라이언트 쿠키의 현재 상태가 아닌 "SET"값을 반환해야합니다.
기존 버전의 PHP와 호환 해야하는 경우 매개 변수를 설정할 때 배열 형식을 사용하지 않고 구식 매개 변수 전달 방법을 사용하는 것이 좋습니다.