如何使用PHP操作cookie
2013-12-04 18:59
537 查看
PHPsetcookie()函数向客户端发送一个HTTPcookie。cookie是由服务器发送到浏览器的变量。cookie通常是服务器嵌入到用户计算机中的小文本文件。每当计算机通过浏览器请求一个页面,就会发送这个cookie。cookie的名称指定为相同名称的变量。例如,如果被发送的cookie名为"name",会自动创建名为$user的变量,包含cookie的值。
必须在任何其他输出发送前对cookie进行赋值。如果成功,则该函数返回true,否则返回false。
name必需。规定cookie的名称。
value必需。规定cookie的值。
expire可选。规定cookie的有效期。
path可选。规定cookie的服务器路径。
domain可选。规定cookie的域名。
secure可选。规定是否通过安全的HTTPS连接来传输cookie。
可以通过$HTTP_COOKIE_VARS["user"]或$_COOKIE["user"]来访问名为"user"的cookie的值。在发送cookie时,cookie的值会自动进行URL编码。接收时会进行URL解码。如果你不需要这样,可以使用setrawcookie()代替。
程序1:
设置并发送cookie:
程序2:
检索cookie值的不同方法:
程序输出:
程序3:
通过把失效日期设置为过去的日期/时间,删除一个cookie:
程序4:
创建一个数组cookie:
程序输出:
程序5:
viewsource
print?
必须在任何其他输出发送前对cookie进行赋值。如果成功,则该函数返回true,否则返回false。
1 | setcookie(name,value,expire,path,domain,secure) |
value必需。规定cookie的值。
expire可选。规定cookie的有效期。
path可选。规定cookie的服务器路径。
domain可选。规定cookie的域名。
secure可选。规定是否通过安全的HTTPS连接来传输cookie。
可以通过$HTTP_COOKIE_VARS["user"]或$_COOKIE["user"]来访问名为"user"的cookie的值。在发送cookie时,cookie的值会自动进行URL编码。接收时会进行URL解码。如果你不需要这样,可以使用setrawcookie()代替。
程序1:
设置并发送cookie:
1 | <?php |
2 | $value = "mycookievalue" ; |
3 | //发送一个简单的cookie |
4 | setcookie( "TestCookie" , $value ); |
5 | ?> |
01 | <html> |
02 | <body> |
03 | ... |
04 | ... |
05 | <?php |
06 | $value = "mycookievalue" ; |
07 | //发送一个24小时候过期的cookie |
08 | setcookie( "TestCookie" , $value ,time()+3600*24); |
09 | ?> |
10 | <html> |
11 | <body> |
检索cookie值的不同方法:
01 | <html> |
02 | <body> |
03 | <?php |
04 | //输出个别的cookie |
05 | echo $_COOKIE [ "TestCookie" ]; |
06 | echo "<br/>" ; |
07 | echo $HTTP_COOKIE_VARS [ "TestCookie" ]; |
08 | echo "<br/>" ; |
09 | //输出所有cookie |
10 | print_r( $_COOKIE ); |
11 | ?> |
12 | </body> |
13 | </html> |
1 | mycookievalue |
2 | mycookievalue |
3 | Array([TestCookie]=>mycookievalue) |
通过把失效日期设置为过去的日期/时间,删除一个cookie:
1 | <?php |
2 | //把失效日期设置为一小时前 |
3 | setcookie( "TestCookie" , "" ,time()-3600); |
4 | ?> |
创建一个数组cookie:
01 | <?php |
02 | setcookie( "cookie[three]" , "cookiethree" ); |
03 | setcookie( "cookie[two]" , "cookietwo" ); |
04 | setcookie( "cookie[one]" , "cookieone" ); |
05 | //输出cookie(在重载页面后) |
06 | if (isset( $_COOKIE [ "cookie" ])) |
07 | { |
08 | foreach ( $_COOKIE [ "cookie" ] as $name => $value ) |
09 | { |
10 | echo "$name:$value<br/>" ; |
11 | } |
12 | } |
13 | ?> |
1 | three:cookiethree |
2 | two:cookietwo |
3 | one:cookieone |
1 | /** |
2 | *01.cookie设置 |
3 | **/ |
4 | function ssetcookie( $var , $value , $life =0){ |
5 | global $_SGLOBAL , $_SC , $_SERVER ; |
6 | setcookie( $_SC [ 'cookiepre' ]. $var , $value , $life ?( $_SGLOBAL [ 'timestamp' ]+ $life ):0, $_SC [ 'cookiepath' ], $_SC [ 'cookiedomain' ], $_SERVER [ 'SERVER_PORT' ]==443?1:0); |
7 | } |
相关文章推荐
- PHP基于SOAP实现webservice
- MacOS开启php
- FTPClient download file 2 methods
- ubuntu 上给PHP安装扩展 Msgpack 和 Yar
- php 获取文件后缀名
- php保存快捷方式到桌面
- ThinkPHP第二十天(getField用法、常用管理员表结构、树形结构前小图标CSS)
- PHP实体层基础类
- libcurl ftp下载实例
- php函数指定默认值方法的小例子
- PHP数据库链接类(PDO+Access)
- PHP函数microtime()用法与说明
- smarty 多维数组 section 循环的用法
- thinkphp表循环
- Yii中的CCheckBoxColumn在widget中的用法
- Ubuntu 服务器 PHP实现word、excel、ppt、pdf 等文档在线阅读功能的实现
- 零PHP基础搭建phpMyAdmin连接远程数据库
- Ubuntu下FTP服务器搭建笔记 - vsftpd
- php是什么
- PHP中文乱码的常见解决方法总结