目次
php开发之cookie

php开发之cookie

Jun 13, 2016 am 09:07 AM

php开发之cookie

<code>cookie是一种在浏览器远端存储数据并以此来跟踪和识别用户的机制。简单的说,cookie是web服务器暂时存储在用户硬盘上的一个文件夹,并随时被web浏览器读取。当用户再次访问web网站的时候,网站通过获取cookie记录用户的特定访问信息(如:上次访问的位置,花费的时间,用户名和密码) ,从而迅速做出相应,比如不需要用户输入密码就可以登录。
文本文件的格式如下:用户名@网站地址[数字].txtcookie 的功能主要有以下几个方面:
</code>
ログイン後にコピー

1,记录访客的某些信息。如可以利用cookie记录用户的访问页面的次数,或者是用户曾经输入的信息。另外,某些网站可以自动记录上次方可登录的用户名。
2,在页面间传递变量。浏览器并不会保存当前页面的任何变量信息,当页面被关闭时,页面上的所有变量信息将随之消失。如果声明一个变量id=8,要把这个变量传递到另一个页面,可以先把这个变量以cookie的形式保存下来,然后在下一个页面读取cookie中该变量的值。
3,将索要查看的Internet页存储在cookie临时文件夹中,可以提高以后浏览器的访问速度。
在php中通过setcookie()函数创建cookie。cookie是HTTP头标的组成部分而头标必须在页面其他内容之前发送,他必须最先输出。若在setcookie()函数之前输出一个HTML标记,或者echo语句,甚至一个空行都会导致程序出错。
语法格式如下:
bool setcookie(string name[,string value[,int explre[,string path[,string domain[,int secure]]]]])
setcookie()函数的参数说明如下:


使用setcookie()函数创建cookie 示例代码如下:

<code class="hljs perl"><!--?php

//setcookie("TMCookie",'www.baidu.com'); 
//setcookie("TMCookie",'www.baidu.com',time()+60);     //cookie的有效期为60秒

//设置有效时间为60秒,有效目录为"/temp/",有效于域名为"www.baidu.com" 及其所有子域名
$value =88;
setcookie("TMCookie",$value,time()+3600,"/temp/",".baidu.com");

?--></code>
ログイン後にコピー

cookie的读取
在php中,可以直接使用全局数组$_COOKIE[]来读取浏览器的cookie的值。
使用print_r()函数读取cookie的变量。示例代码如下:

<code class="hljs xml"><!--?php

if(!isset($_COOKIE["visittime"])){                //检测cookie文件是否存在,如果不存在

    setcookie("visittime",date("Y-m-d H:i:s"));   //设置一个cookie变量
    echo "欢迎第一次访问网站!!!";                    //输出字符串
}else{

    setcookie("visittime",date("Y-m-d H:i:s"),time()+60);
    echo "上次访问的时间为:".$_COOKIE["visittime"]."\n";

}

echo "本次访问的时间为:".date("Y-m-d H:i:s")."\n";



?--></code>
ログイン後にコピー

运行结果如下:

删除cookie
删除cookie主要是使用setcookie函数来实现的,就是将cookie的失效时间减1秒,如题如下:
setcookie(“”visittime),time()-1);

cookie 的生命周期
如果cookie不设定时间,就表示它的生命周期为浏览器会话的期间,只要关闭浏览器,那么cookie就会被删除。这种cookie被称为会话cookie,一般不保存在硬盘上,而是保存在内存中。
如果cookie设定失效时间,那么浏览器会把cookie保存到硬盘中,再次打开浏览器时cookie仍然后笑,直到cookie的有效期超时。
浏览器最多允许存储的cookie文件为300个,而且每个cookie文件最大支持容量为4k,每个域名最多支持20个cookie。如果达到限制时,浏览器就会随机的删除cookies。

このウェブサイトの声明
この記事の内容はネチズンが自主的に寄稿したものであり、著作権は原著者に帰属します。このサイトは、それに相当する法的責任を負いません。盗作または侵害の疑いのあるコンテンツを見つけた場合は、admin@php.cn までご連絡ください。

ホット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衣類リムーバー

Video Face Swap

Video Face Swap

完全無料の AI 顔交換ツールを使用して、あらゆるビデオの顔を簡単に交換できます。

ホットツール

メモ帳++7.3.1

メモ帳++7.3.1

使いやすく無料のコードエディター

SublimeText3 中国語版

SublimeText3 中国語版

中国語版、とても使いやすい

ゼンドスタジオ 13.0.1

ゼンドスタジオ 13.0.1

強力な PHP 統合開発環境

ドリームウィーバー CS6

ドリームウィーバー CS6

ビジュアル Web 開発ツール

SublimeText3 Mac版

SublimeText3 Mac版

神レベルのコード編集ソフト(SublimeText3)