phpcookie路径限制实例详解

时间:2016-07-24
php setcookie函数可以创建一个cookie,该函数的第四个参数可以设置cookie在指定路径或目录下面生效,本文章向大家介绍php设置一个cookie路径限制,需要的朋友可以参考一下本文章。

比如在本地服务器上有三个文件

  1. http://127.0.0.1/test.php
  2. http://127.0.0.1/java/test.php
  3. http://127.0.0.1/java/mian/test.php

现在我们分别为这三个test.php设置一个名称不同的cookie

<?php
    setcookie('first_cookie','first_value',time()+3600,'/'); // 设置/test.php文件下的cookie
    setcookie('second_cookie','second_value',time()+3600,'/java/'); // 设置/java/test.php文件下的cookie
    setcookie('third_cookie','third_value',time()+3600,'/java/main/'); // 设置java/main/test.php文件下的cookie
   /* http://www.manongjc.com/article/1256.html */
?>

现在我们分别在在这三个文件里面输出打印$_COOKIE变量

http://127.0.0.1/test.php文件输出$_COOKIE变量为:

Array
(
    [first_cookie] => first_value
)

http://127.0.0.1/java/test.php文件输出$_COOKIE变量为:

Array
(
    [second_cookie] => second_value
    [first_cookie] => first_value
)

http://127.0.0.1/java/main/test.php文件输出$_COOKIE变量为:

Array
(
    [third_cookie] => third_value
    [second_cookie] => second_value
    [first_cookie] => first_value
)

从上面结果我们可以看出:

  • 路径"/"表示cookie作用于整个网站目录中
  • 路径'/java/'表示cookie作用于java目录中,java目录下面的其他子目录也可以获取到这个cookie
  • '/java/main/'表示cookie作用于java/main/目录中,java/main/目录面的其他子目录也可以获取到这个cookie