>  기사  >  백엔드 개발  >  PHP에서 쿠키를 생성하고 읽고 삭제하는 방법은 무엇입니까?

PHP에서 쿠키를 생성하고 읽고 삭제하는 방법은 무엇입니까?

WBOY
WBOY원래의
2021-10-26 10:32:224857검색

이전 글에서는 "5분만에 PHP의 매직 메소드 이해하기(상세 예시)"를 가져왔는데, 이번 글에서는 PHP에서 흔히 사용되는 매직 메소드를 자세히 소개하겠습니다. PHP를 살펴보세요. 저는 쿠키에 대해 어느 정도 지식을 가지고 있습니다. 그것이 모든 사람에게 도움이 되기를 바랍니다!

PHP에서 쿠키를 생성하고 읽고 삭제하는 방법은 무엇입니까?

우리의 일상생활에서 웹사이트에 로그인을 하면 마지막으로 로그인했을 때의 정보가 남게 되며, 장바구니의 여러 페이지에서 보셨던 상품도 보실 수 있습니다. 웹사이트는 사용자에게 콘텐츠를 편리하게 제공하기 위해 사용자를 식별하는 수단입니다. 이렇게 복잡한 기능을 구현하려면 쿠키를 사용해야 하는데, 쿠키가 무엇인지 살펴보겠습니다. 용도는 무엇이며 생성, 읽기 및 삭제 방법은 무엇입니까?

쿠키란 무엇인가요?Cookie

通过cookie就可以实现很多功能,那么什么是cookie?cookie是在HTTP协议下,将服务器传递给浏览器的少量数据保存在用户浏览器的一种方式。比如它可以保存一些用户的信息,这样的话即使浏览器关闭或者连接中断的情况,用户仍然可以维护这些数据。

也可以理解为,cookie就是将浏览器网页的特定信息以文件的形式保存在客户端硬盘中,当你再次访问这个网站的时候,浏览器就会先读取这个cookie文件,读取到的数据就提供给浏览器。这样的话就实现了类似用户的网页有一些个性化的设置,再次打开会保存下来这样的效果。这就是通过cookie将它们展示出来。

<strong><span style="font-size: 20px;">Cookie</span></strong>的主要用途

cookie的用途有很多,cookie中的信息有很多种,服务器就可以利用cookie包含信息的这用任意性来进行筛选信息并且维护信息,这样做的目的是为了判断HTTP传输中的状态。cookie最典型的应用我们日常中也是很常见的,就是去判断一个注册的用户是否已经登陆了网站,还有就是商城中类似购物车中的功能。

下面跟大家总结一下cookie常用于以下三个方面:

  • 记录用户的一些信息;类似于上文中说到的用户个性化设置。

  • 在页面之间传递数据;也就是一个页面的数据要在另一个页面使用时。

  • 将查看的Web网页储存在cookie临时文件中,可以加快网页的访问速度。

其中我们需要注意到的是,一般不建议使用cookie来保存数据集或者较大的数据,同时并不是所有的浏览器都会支持cookie,并且数据信息都是按着文本的形式保存的,为了不影响网站的安全性,最好不要有敏感未加密的数据保存。

创建cookie

在PHP中创建cookie的话需要setcookie()函数,创建cookie中我们需要注意的是,cookie是HTTP响应头部的组成部分,响应头部它必须最先输出。若是setcookie()函数前输出一个HTML或者空行、echo什么的都可能会导致程序出错。

setcookie()函数的语法格式如下:

setcookie(string $name [, string $value = "" [, int $expire = 0 [, string $path = "" [, string $domain = "" [, bool $secure = false [, bool $httponly = false ]]]]]])

其中我们需要注意的是:

  • $name---表示设置 Cookie 的名称;

  • $value---是可选参数,可以用来设置 Cookie 的值;

  • $expire---是可选参数,用来设置 Cookie 的过期时间,这个时间是 Unix 时间戳的形式。cookie有些是临时的有些是持续的,临时的在浏览器上会存在一定的时间,一旦超过规定的时间该cookie就会被系统清除。

  • $path---可选参数,用来设置 Cookie 有效的服务器路径。

  • $domain---可选参数,用来设置 Cookie 的有效域名/子域名。

  • $secure

쿠키를 통해 많은 기능을 구현할 수 있는데 쿠키란 무엇인가요? 쿠키는 서버가 브라우저에 전달하는 소량의 데이터를 사용자의 브라우저에서 HTTP 프로토콜에 따라 저장하는 방법입니다. 예를 들어 일부 사용자 정보를 저장할 수 있으므로 브라우저가 닫히거나 연결이 중단되더라도 사용자는 이 데이터를 계속 유지할 수 있습니다.

쿠키는 브라우저 웹페이지의 특정 정보를 클라이언트의 하드 드라이브에 파일 형식으로 저장하는 것으로 이해될 수 있습니다. 이 웹사이트를 다시 방문하면 브라우저가 먼저 이 쿠키 파일을 읽고 읽게 되는 데이터는 다음과 같습니다. 브라우저에 제공됩니다. 이런 방식으로 사용자의 웹페이지에 몇 가지 개인화된 설정이 있으며, 이 설정은 다시 열 때 저장됩니다. 이것이 쿠키를 통해 표시되는 방식입니다.


CookiePHP에서 쿠키를 생성하고 읽고 삭제하는 방법은 무엇입니까?

쿠키의 주요 용도는 다양합니다. 쿠키에는 다양한 정보가 포함되어 있습니다. 정보를 필터링하고 정보를 유지하여 HTTP 전송 상태를 확인하기 위해 쿠키에 포함됩니다. 쿠키의 가장 일반적인 적용은 우리 일상생활에서도 매우 흔한데, 이는 등록된 이용자가 웹사이트에 로그인했는지 여부를 확인하는 것이며, 쇼핑몰의 장바구니와 유사한 기능이 있습니다.

🎜쿠키는 다음 세 가지 측면에서 일반적으로 사용된다는 점을 요약하겠습니다. 🎜
  • 🎜언급된 사용자와 유사한 사용자에 대한 일부 정보를 기록합니다. 개인화 위. 🎜🎜
  • 🎜페이지 간 데이터 전송, 즉 한 페이지의 데이터가 다른 페이지에서 사용될 때. 🎜🎜
  • 🎜본 웹 페이지를 임시 쿠키 파일에 저장하면 웹 페이지 액세스 속도를 높일 수 있습니다. 🎜🎜🎜🎜우리가 주목해야 할 점은 데이터 세트나 더 큰 데이터를 저장하기 위해 쿠키를 사용하는 것은 일반적으로 권장되지 않는다는 것입니다. 동시에 모든 브라우저가 쿠키를 지원하는 것은 아니며 데이터 정보는 텍스트 형식으로 저장됩니다. 웹사이트 보안에 영향을 주지 않으려면 민감한 데이터를 암호화되지 않은 상태로 저장하지 않는 것이 가장 좋습니다. 🎜🎜🎜🎜쿠키 생성🎜🎜🎜🎜🎜PHP에서 쿠키를 생성하려면 setcookie() 함수가 필요합니다. 쿠키를 생성할 때 주의해야 할 점은 쿠키가 HTTP의 일부라는 것입니다. 응답 헤더가 먼저 출력되어야 합니다. setcookie() 함수 이전에 HTML, 빈줄, 에코 등이 출력되면 프로그램 오류가 발생할 수 있습니다. 🎜🎜🎜setcookie()함수의 구문 형식은 다음과 같습니다.🎜
    <?php
        setcookie(&#39;Website&#39;, &#39;好好学习&#39;);
        setcookie(&#39;Title&#39;, &#39;Cookie&#39;, time()+3600);  // 设置 Cookie 1 小时后过期
        echo &#39;<pre class="brush:php;toolbar:false">&#39;;
        print_r($_COOKIE);
    ?>
    🎜우리가 주목해야 할 것은:🎜
    • 🎜$name---쿠키의 이름을 나타냅니다. 🎜🎜
    • 🎜$value---사용할 수 있는 선택적 매개변수입니다. 쿠키 값을 설정합니다. 🎜🎜
    • 🎜$expire---는 쿠키의 만료 시간을 설정하는 데 사용되는 선택적 매개변수입니다. 이 시간은 Unix 타임스탬프 형식입니다. . 일부 쿠키는 일시적이고 일부는 영구적입니다. 임시 쿠키는 일정 기간 동안 브라우저에 존재합니다. 지정된 시간이 만료되면 쿠키는 시스템에 의해 삭제됩니다. 🎜🎜
    • 🎜$path---쿠키의 유효한 서버 경로를 설정하는 데 사용되는 선택적 매개변수입니다. 🎜🎜
    • 🎜$domain---쿠키의 유효한 도메인 이름/하위 도메인 이름을 설정하는 데 사용되는 선택적 매개변수입니다. 🎜🎜
    • 🎜$secure---선택적 매개변수, 이 쿠키가 보안 HTTPS 연결을 통해서만 클라이언트에 전달되는지 여부를 설정하는 데 사용됩니다. 🎜🎜🎜🎜 다음으로 예제를 통해 쿠키 생성을 살펴보겠습니다. 🎜
      $_COOKIE[&#39;Cookie 名称&#39;]
      🎜출력 결과: 🎜🎜🎜🎜🎜🎜실행 시 주의할 점: 이 스크립트를 실행하면 출력 정보가 ​​없습니다. 따라서 쿠키를 설정한 후 페이지를 새로 고쳐야 HTTP 헤더가 다음 요청에서 마지막으로 설정된 쿠키 정보를 전달한 다음 쿠키를 읽을 수 있습니다. 🎜🎜🎜🎜쿠키 읽기🎜🎜🎜

      在PHP中,想要读取cookie就需要使用超级全局变量$_COOKIE$_COOKIE是一个储存着所有信息的数组,它的语法格式如下:

      $_COOKIE[&#39;Cookie 名称&#39;]

      实例如下:

      <?php
          setcookie(&#39;Website&#39;, &#39;好好学习&#39;);
          setcookie(&#39;Title&#39;, &#39;Cookie&#39;, time()+3600);  // 设置 Cookie 1 小时后过期
          echo &#39;<pre class="brush:php;toolbar:false">&#39;;
          print_r($_COOKIE);
          echo &#39;Website 的值为:&#39;.$_COOKIE[&#39;Website&#39;].&#39;<br>&#39;;
          echo &#39;Title 的值为:&#39;.$_COOKIE[&#39;Title&#39;];
      ?>

      输出结果:

      PHP에서 쿠키를 생성하고 읽고 삭제하는 방법은 무엇입니까?

      由此我们边通过$_COOKIE 读取到了cookie的值。

      删除cookie

      我们在上文中说,可以给临时的cookie设置一个时间,当时间过了之后,系统会自动删除这个cookie,那能不能够当 Cookie 被创建后,没有设置它的失效时间,其 Cookie 文件会在关闭浏览器时被自动删除。如果要在关闭浏览器之前删除 Cookie 文件,同样需要使用 setcookie() 函数。

      删除 Cookie 和创建 Cookie 的方式基本类似,只需要使用 setcookie() 函数将 Cookie 的值(也就是第二个参数)设置为空,或者将 Cookie 的过期时间(也就是第三个参数)设置为小于系统的当前时间即可。

      实例如下:

      <?php
          setcookie(&#39;Website&#39;,&#39;&#39;);
          setcookie(&#39;Title&#39;,&#39;Cookie&#39;,time()-1);
          echo &#39;<pre class="brush:php;toolbar:false">&#39;;
          print_r($_COOKIE);
      ?>

      输出结果:

      PHP에서 쿠키를 생성하고 읽고 삭제하는 방법은 무엇입니까?

      如此我们便完成了删除cookie的值。

      大家如果感兴趣的话,可以点击《PHP视频教程》进行更多关于PHP知识的学习。

위 내용은 PHP에서 쿠키를 생성하고 읽고 삭제하는 방법은 무엇입니까?의 상세 내용입니다. 자세한 내용은 PHP 중국어 웹사이트의 기타 관련 기사를 참조하세요!

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