>  기사  >  백엔드 개발  >  PHP는 세션과 쿠키를 운영합니다.

PHP는 세션과 쿠키를 운영합니다.

伊谢尔伦
伊谢尔伦원래의
2016-11-26 16:24:54918검색

사용자 로그인 확인, 사용자 검색 기록 기록, 장바구니 데이터 저장, 사용자 세션 유효 시간 제한 등 사용자 정보를 추적할 때 세션 및 쿠키를 사용해야 합니다. 오늘은 PHP가 세션과 쿠키를 작동하는 방법을 알아 보겠습니다.

세션

PHP의 $_SESSION은 현재 사용자 데이터 정보를 저장할 수 있습니다. 사용자가 WEB 웹 사이트를 방문하면 PHP는 각 방문 사용자에 대한 세션 ID를 생성합니다. 이는 클라이언트에 저장되고, 사용자의 세션 데이터는 서버에 저장됩니다. PHP는 각각의 다른 사용자 정보를 저장할 수 있으며, 세션이 만료되면 사용자 세션 정보도 무효화됩니다.

Session을 사용할 때 PHP 세션을 사용할 때 반드시 페이지 헤더에 session_start()를 추가하여 서버에 세션 사용을 시작하라고 알리고 그 전에는 출력이 없어야 합니다. 그렇지 않으면 오류가 발생합니다. 보고됩니다.

  <?php 
session_start();  
  //PHP 代码...  ?>

PHP 설정 및 세션 가져오기

PHP의 $_SESSION을 사용하여 다음과 같은 세션 데이터를 설정하고 가져올 수 있습니다.

<?php 
session_start();   
  //设置一个session值  $_SESSION["name"] = "Hello";  
  //将session以数组形式保存  $_SESSION["arr"] = array(&#39;name&#39; => &#39;Hello&#39;, &#39;url&#39; => &#39;http://www.helloweba.com&#39;, &#39;type&#39;=> &#39;website&#39;);  ?>

세션 데이터가 저장된 경우 웹사이트에서 세션을 사용할 수 있습니다. 예를 들어 다른 페이지에서 세션 데이터를 가져올 수 있습니다.

 <?php 
session_start();   
  //获取保存的Session name   echo $_SESSION["name"]; 
  //打印数组session 
print_r($_SESSION["arr"]);  ?>

PHP 세션 삭제

세션이 더 이상 사용되지 않으면 다음을 사용할 수 있습니다. PHP는 다음과 같이 세션 데이터를 삭제하고 지웁니다.

<?php  unset($_SESSION["name"]);  ?>

현재 사용자의 세션 정보를 모두 지우려면 다음 코드를 사용하면 됩니다.

 <?php 
session_destroy();  ?>

Cookie

쿠키는 이용자가 방문한 웹사이트 서버가 현재 클라이언트 컴퓨터에 생성하는 임시 파일로, 이용자가 다음번에 해당 웹사이트를 방문할 때 웹사이트 서버가 이용자 정보를 식별할 수 있도록 정보를 저장하는 데 사용됩니다. 일반 쿠키는 사용자 인터페이스, 사용자 ID 및 기타 데이터를 저장하는 데 사용됩니다.

PHP 쿠키 설정

PHP의 setcookie()를 사용하여 클라이언트에서 쿠키를 생성할 수 있습니다. 이 함수는 쿠키 이름, 값 및 유효 기간이라는 세 가지 주요 매개변수를 제공합니다.

<?php  $cookie_val = &#39;Chrome&#39;;  
setcookie("browser", $cookie_val, time()+3600);   ?>

위 코드를 실행하면 Chrome이라는 쿠키가 생성되어 클라이언트에 1시간 동안 저장됩니다. 쿠키 정보는 1시간 후에 만료됩니다.

PHP가 쿠키 수신

쿠키가 생성된 후 PHP의 $_COOKIE를 사용하여 쉽게 쿠키 값을 얻을 수 있으며 사용법은 다음과 같습니다.

<?php  if(isset($_COOKIE[&#39;browser&#39;])) { 
    echo &#39;您的浏览器是:&#39; . $_COOKIE[&#39;browser&#39;]; 
}  ?>

PHP 쿠키 삭제

컴퓨터에 저장된 쿠키 정보를 완전히 삭제하려면 다음 코드를 사용하면 됩니다.

  <?php 
setcookie("browser", "", time()-3600);  ?>

위 코드는 browser라는 쿠키를 지우고 쿠키 설정을 설정합니다. 유효기간 1시간 전까지 쿠키 정보가 완전히 삭제되었습니다.


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