当前位置: 首页 > 文章教程  > 计算机与互联网 > 网络编程

8.3.2获取cookie

9/17/2020 9:26:54 PM 人评论

8.3.2获取cookie

8.3.2 获取cookie

当cookie设置后,可以通过PHP预定义变量$_COOKIE来获取cookie。不过,只能在其他页面使用这个变量来获取设置过的cookie,因为PHP中,被设置的cookie并不会在本页生效,除非该页面被刷新。代码8-8演示了设置一个cookie后,在页面打印出该cookie的值。

代码8-8 显示cookie的值8-8.php


01 <?php

02 setcookie("testcookie","ilovephp");//设置cookie

03 echo"cookie's value:".$_COOKIE['testcookie'];//输出指定的cookie

04 ?>


【代码解析】通过浏览器访问8-8.php并刷新,会看到如图8-7所示的输出结果。

图 8-7 显示cookie的值

【代码解析】这里之所以要刷新页面后才能看到cookie的值,是因为,cookie的值不会在调用setcookie()之后立即出现在变量$_COOKIE中,而是在客户端再次请求该页面时,cookie随请求一起发送至服务器,这时cookie才能存入到变量$_COOKIE中。

下面的代码8-9生成数组cookie,这样可以设置多个cookie,并将其作为数组单元。提取cookie时,所有的值都放在一个数组中。

代码8-9 设置多个cookie 8-9.php


01 <?php

02 //设置多个cookie,存放在数组mycookie中

03 setcookie("mycookie['three']","cookiethree");//设置mycookie['three']

04 setcookie("mycookie['two']","cookietwo");//设置mycookie['two']

05 setcookie("mycookie['one']","cookieone");//设置mycookie['one']

06

07 //刷新页面后,将所有cookie显示出来

08 if(isset($_COOKIE['mycookie']))

09 {

10 foreach($_COOKIE['mycookie']as$name=>$value)

11 {

12 echo"$name:$value<br/>\n";//循环输出各个cookie的值

13 }

14 }

15 ?>


【代码解析】通过浏览器访问代码8-9所示的程序8-9.php,第一次会看到一个空白页面,然后刷新该页面,就会看到如图8-8所示的输出结果。这段代码第10~13行通过循环,从变量$_COOKIE中取出了所有cookie。

图 8-8 显示多个cookie的值

相关教程

共有条评论 网友评论

验证码: 看不清楚?