찾다
백엔드 개발PHP 튜토리얼php 进阶:灵活地运用 cookie_PHP

Cookie

cookie 是强大而方便的功能,它能提供一个范围内的全程变量,来看看 cookie 的语法:

setcookie(cookievalue,value,time,path,domain);

cookievalue 是设置的 cookie 变量,value 是将一个值设置成 cookie 的变量,time 是这个 cookie 变量作用的时间,path 是 cookie 作用的路径,domain 是 cookie 作用的域;

需要注意的是在 php 程序内设置 cookie 时一定不能在 html 这个标记的后面设置.

下面看个例子:

setcookie("cookietime","2001-5-2",time()+3600,"/","test.php");

这个 cookie 设置的意思是给日期 "2001-5-2" 设置一个 cookie 变量 $cookietime ,其作用时间为 3600 秒,这个变量在 /test.php 里生效.

这时在 test.php 里加上 echo $cookietime; 就会显示出 2001-5-2 .

如果将 cookie 里的时间置空,那么关闭浏览器后,cookie 就失效了.

cookie 有一个特殊的地方就是 cookie 设置的值并不会马上被执行,直到第二次引用时才会被执行,那么第一次引用的 cookie 值是什么呢?
就是 cookie 上一次设置的值,这儿理解起来有点费劲,没关系,举个例子就全明白了:

setcookie("cookietime",time,time()+3600,"/","test.php");

第一次引用时 $cookietime 内没有值,第二次引用时发现 $cookietime 内的 time 才显示出来,修该 time 为 2001:

setcookie("cookietime",2001,time()+3600,"/","test.php");

再执行一次,第一次引用时 $cookietime 的值为 time,第二次引用 $cookietime 的值才为 2001;那么 cookie 的这个特性有何功用呢?聪明的读者可能已经知道其用法了,就是用于通告和报警功能上的;

看个关于使用 cookie 这个特性的例子,这里程序要实现的功能是当用户下一次来浏览网站时,所有这个用户没看过的新信息后面都添加一个 (new),用 cookie 来完成这个功能再简单不过了,至少在我看来还没有任何其它方法能比使用 cookie 来完成这个功能更简单的了.

存储信息自然需要时间值,只要数据库有存储与每条信息相关的时间值加上 cookie 就能完成这个看上去还不错的功能:

test.php:

$time=date('Y-m-d H:i:s');
setcookie("cookietime",$time,time()+3600000,"/","test.php");

......
......
//从数据库取出时间值
$datatime=mysql_result($result,$i,"time");

//比较两个时间的大小,所有 $datatime 大于 $cookietime 的信息后面加上 (new)
if ($datatime>$cookietime)
echo "(new)";
......
......


整个过程就是这么简洁明了,当用户向网站发出浏览 /test.php 的请求时,他的浏览器就会把他上一次浏览 /test.php 的 cookie 记录发给服务器,服务器接受这个 cookie 值并做处理,同时把用户浏览器的 cookie 重新设置,并返回处理的结果,这就是 cookie 工作的原理.
성명
본 글의 내용은 네티즌들의 자발적인 기여로 작성되었으며, 저작권은 원저작자에게 있습니다. 본 사이트는 이에 상응하는 법적 책임을 지지 않습니다. 표절이나 침해가 의심되는 콘텐츠를 발견한 경우 admin@php.cn으로 문의하세요.
修复:谷歌浏览器请求太多错误 429 [已解决]修复:谷歌浏览器请求太多错误 429 [已解决]Apr 16, 2023 am 09:22 AM

近期很多Windows用户反映,当他们尝试访问某个URL时,PC上的GoogleChrome浏览器显示错误429。这是因为每次用户尝试在短时间内通过浏览器。通常,此错误是由网站生成的,以避免通过向服务器发送过多请求而被机器人或黑客入侵病毒。用户对在这个阶段可以做什么感到困惑,并因此感到失望。导致此错误的因素可能很多,我们在下面列出了其中一些因素。缓存内存和其他站点数据未清除从第三方来源安装的扩展系统上的一些有害软件病毒攻击在研究了上面列出的因素之后,我们在这篇文章中收集了一些修复程序,这

如果 Grammarly 无法在 Windows 10 浏览器上运行的 8 个重大修复如果 Grammarly 无法在 Windows 10 浏览器上运行的 8 个重大修复May 05, 2023 pm 02:16 PM

如果您在Windows10或11PC上遇到语法问题,本文将帮助您解决此问题。Grammarly是最流行的打字助手之一,用于修复语法、拼写、清晰度等。它已经成为写作专业人士必不可少的一部分。但是,如果它不能正常工作,它可能是一个非常令人沮丧的体验。许多Windows用户报告说此工具在他们的计算机上运行不佳。我们做了深入的分析,找到了这个问题的原因和解决方案。为什么Grammarly无法在我的PC上运行?由于几个常见原因,PC上的Grammarly可能无法正常工作。它包括以下内

如何在 Google Chrome 中启用或禁用第三方 Cookie如何在 Google Chrome 中启用或禁用第三方 CookieApr 15, 2023 pm 02:07 PM

每个网站都通过创建cookie使用户更容易浏览他们的网页和浏览他们的网站。然而,网站创建了一些第三方cookie,使他们能够跟踪访问其他网站的用户,以便更好地了解他们,从而有助于展示广告和其他帖子。一些用户可能认为他们的数据遭到破坏或存在安全风险,而另一些用户可能认为允许这些第三方cookie跟踪他们以在浏览器上获取更多内容是很好的。所以我们在这篇文章中解释了如何在谷歌浏览器中启用或禁用第三方cookies,详细步骤如下。如何在GoogleChrome中启用第三方Cookie如果您认为要

@JsonIdentityInfo注解在Java中使用Jackson的重要性是什么?@JsonIdentityInfo注解在Java中使用Jackson的重要性是什么?Sep 23, 2023 am 09:37 AM

当对象在Jackson库中具有父子关系时,将使用@JsonIdentityInfo注释。@JsonIdentityInfo 注解 用于在序列化和反序列化过程中指示对象身份。ObjectIdGenerators.PropertyGenerator是一个抽象占位符类,用于表示要使用的对象标识符来自POJO属性的情况。语法@Target(value={ANNOTATION_TYPE,TYPE,FIELD,METHOD,PARAMETER})@Retention(value=RUNTIME)public

PHP算法的基本概念与应用PHP算法的基本概念与应用Jul 07, 2023 pm 05:22 PM

PHP算法的基本概念与应用随着互联网的快速发展,PHP作为一种简单易学且功能强大的编程语言,在Web开发中得到了广泛应用。而算法作为计算机科学的基础,对于解决问题和优化程序起着至关重要的作用。本文将介绍PHP算法的基本概念,并提供一些实际应用的代码示例。一、算法的基本概念算法的定义算法是解决特定问题的有限序列的一种描述。它包括一系列的步骤和规则,按照特定的顺

php curl怎么设置cookiephp curl怎么设置cookieSep 26, 2021 am 09:27 AM

php curl设置cookie的方法:1、创建PHP示例文件;2、通过“curl_setopt”函数设置cURL传输选项;3、在CURL中传递cookie即可。

php无法设置cookie是什么原因?怎么解决?php无法设置cookie是什么原因?怎么解决?Mar 28, 2023 am 10:44 AM

PHP 是一种流行的服务器端脚本语言,用于创建动态 Web 网站和应用程序。其中一个 PHP 的主要功能就是设置和处理 Cookie。Cookie 是一种在用户端存储数据的小文件,它可以在用户离开网站后记住用户的操作和信息,并在下一次访问该网站时将该信息发送回服务器。

Python为什么如此受欢迎?探究Python在编程领域的优势Python为什么如此受欢迎?探究Python在编程领域的优势Mar 26, 2024 am 09:15 AM

Python为什么如此受欢迎?探究Python在编程领域的优势,需要具体代码示例Python作为一种高级编程语言,自问世之日起便备受程序员们的喜爱与推崇。究其原因,不仅仅是因为它的简洁、易读和强大的功能,更因为它在各个领域都展现出了无可比拟的优势。本文将探究Python在编程领域的优势,并通过具体的代码示例来解释为什么Python如此受欢迎。首先,Pytho

See all articles

핫 AI 도구

Undresser.AI Undress

Undresser.AI Undress

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

AI Clothes Remover

AI Clothes Remover

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

Undress AI Tool

Undress AI Tool

무료로 이미지를 벗다

Clothoff.io

Clothoff.io

AI 옷 제거제

AI Hentai Generator

AI Hentai Generator

AI Hentai를 무료로 생성하십시오.

뜨거운 도구

Dreamweaver Mac版

Dreamweaver Mac版

시각적 웹 개발 도구

DVWA

DVWA

DVWA(Damn Vulnerable Web App)는 매우 취약한 PHP/MySQL 웹 애플리케이션입니다. 주요 목표는 보안 전문가가 법적 환경에서 자신의 기술과 도구를 테스트하고, 웹 개발자가 웹 응용 프로그램 보안 프로세스를 더 잘 이해할 수 있도록 돕고, 교사/학생이 교실 환경 웹 응용 프로그램에서 가르치고 배울 수 있도록 돕는 것입니다. 보안. DVWA의 목표는 다양한 난이도의 간단하고 간단한 인터페이스를 통해 가장 일반적인 웹 취약점 중 일부를 연습하는 것입니다. 이 소프트웨어는

드림위버 CS6

드림위버 CS6

시각적 웹 개발 도구

에디트플러스 중국어 크랙 버전

에디트플러스 중국어 크랙 버전

작은 크기, 구문 강조, 코드 프롬프트 기능을 지원하지 않음

SublimeText3 Linux 새 버전

SublimeText3 Linux 새 버전

SublimeText3 Linux 최신 버전