Im vorherigen Artikel habe ich Ihnen „Erklären Sie die magischen Methoden in PHP in fünf Minuten (detaillierte Beispiele)“ vorgestellt, der Sie ausführlich in die in PHP häufig verwendeten magischen Methoden einführt. In diesem Artikel werden wir es tun Schauen Sie sich PHP an. Ich habe einige Kenntnisse über Cookies und hoffe, dass es für alle hilfreich ist!
In unserem täglichen Leben bleiben beim Einloggen auf einer Website Informationen zurück, wann Sie sich zuletzt angemeldet haben, und Sie sehen auch die Produkte, die Sie auf verschiedenen Seiten im Warenkorb gesehen haben. Diese werden von der Website verwendet . Ein Mittel zur Identifizierung von Benutzern, um Inhalte bequem an Benutzer weiterzuleiten. Wenn Sie solch komplexe Funktionen implementieren möchten, müssen Sie Cookies verwenden. Schauen wir uns also an, was Cookies sind. Wozu dient es und wie wird es erstellt, gelesen und gelöscht?
Was ist Cookie
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
</p><p>Cookie<img src="https://img.php.cn/upload/image/943/699/981/1635214240392978.png" title="1635214240392978.png" alt="Wie erstelle, lese und lösche ich Cookies in PHP?"/></p>
Der Hauptzweck von
Es gibt viele Arten von Informationen in Cookies. Der Server kann die Beliebigkeit der enthaltenen Informationen nutzen in Cookies zum Filtern von Informationen und zum Verwalten von Informationen, um den Status der HTTP-Übertragung zu bestimmen. Die häufigste Anwendung von Cookies ist auch in unserem täglichen Leben weit verbreitet, nämlich festzustellen, ob sich ein registrierter Benutzer auf der Website angemeldet hat, und es gibt ähnliche Funktionen wie der Warenkorb im Einkaufszentrum.
🎜Lassen Sie mich zusammenfassen, dass Cookies häufig in den folgenden drei Aspekten verwendet werden: 🎜setcookie()
. Beim Erstellen von Cookies müssen wir darauf achten, dass Cookies Teil des HTTP sind Der Antwortheader muss zuerst ausgegeben werden. Wenn vor der Funktion setcookie() ein HTML, eine Leerzeile, ein Echo usw. ausgegeben wird, kann es zu einem Programmfehler kommen. 🎜🎜🎜setcookie()
Das Syntaxformat der Funktion ist wie folgt:🎜<?php setcookie('Website', '好好学习'); setcookie('Title', 'Cookie', time()+3600); // 设置 Cookie 1 小时后过期 echo '<pre class="brush:php;toolbar:false">'; print_r($_COOKIE); ?>
$value
---ist ein optionaler Parameter, der verwendet werden kann um den Wert des Cookies festzulegen; 🎜🎜 $expire
--- ist ein optionaler Parameter, der zum Festlegen der Ablaufzeit des Cookies verwendet wird. Diese Zeit hat die Form eines Unix-Zeitstempels . Einige Cookies sind temporär, andere bleiben für einen bestimmten Zeitraum im Browser bestehen. Nach Ablauf der angegebenen Zeit wird das Cookie vom System gelöscht. 🎜🎜$path
---optionaler Parameter, der zum Festlegen des gültigen Serverpfads des Cookies verwendet wird. 🎜🎜$domain
---optionaler Parameter, der zum Festlegen des gültigen Domänennamens/Subdomänennamens des Cookies verwendet wird. 🎜🎜$secure
---optionaler Parameter, mit dem festgelegt wird, ob dieses Cookie nur über eine sichere HTTPS-Verbindung an den Client übergeben wird. 🎜🎜🎜🎜Sehen wir uns das Erstellen von Cookies anhand eines Beispiels an: 🎜$_COOKIE['Cookie 名称']
在PHP中,想要读取cookie就需要使用超级全局变量$_COOKIE
,$_COOKIE
是一个储存着所有信息的数组,它的语法格式如下:
$_COOKIE['Cookie 名称']
实例如下:
<?php setcookie('Website', '好好学习'); setcookie('Title', 'Cookie', time()+3600); // 设置 Cookie 1 小时后过期 echo '<pre class="brush:php;toolbar:false">'; print_r($_COOKIE); echo 'Website 的值为:'.$_COOKIE['Website'].'<br>'; echo 'Title 的值为:'.$_COOKIE['Title']; ?>
输出结果:
由此我们边通过$_COOKIE 读取到了cookie的值。
删除cookie
我们在上文中说,可以给临时的cookie设置一个时间,当时间过了之后,系统会自动删除这个cookie,那能不能够当 Cookie 被创建后,没有设置它的失效时间,其 Cookie 文件会在关闭浏览器时被自动删除。如果要在关闭浏览器之前删除 Cookie 文件,同样需要使用 setcookie()
函数。
删除 Cookie 和创建 Cookie 的方式基本类似,只需要使用 setcookie() 函数将 Cookie 的值(也就是第二个参数)设置为空,或者将 Cookie 的过期时间(也就是第三个参数)设置为小于系统的当前时间即可。
实例如下:
<?php setcookie('Website',''); setcookie('Title','Cookie',time()-1); echo '<pre class="brush:php;toolbar:false">'; print_r($_COOKIE); ?>
输出结果:
如此我们便完成了删除cookie的值。
大家如果感兴趣的话,可以点击《PHP视频教程》进行更多关于PHP知识的学习。
Das obige ist der detaillierte Inhalt vonWie erstelle, lese und lösche ich Cookies in PHP?. Für weitere Informationen folgen Sie bitte anderen verwandten Artikeln auf der PHP chinesischen Website!