The meaning of the two parameters can be summarized in one sentence:
path represents the directory where the cookie is located
domain represents the domain where the cookie is located, and the default is the requested address
First modify our hosts file and my local intranet ip 192.168.1.162
一.
We create the folder cookietest in the web root directory and create the file index.php
<?php setcookie('t1','t1',time()+3600,'/','simael.php.com'); setcookie('t2','t2',time()+3600,'/','php.com'); setcookie('t3','t3',time()+3600,'/','m0sh1.php.com'); setcookie('t4','t4',time()+3600,'/cookietest','simael.php.com'); setcookie('t5','t5',time()+3600,'/cookietest','php.com'); setcookie('t6','t6',time()+3600,'/cookietest','m0sh1.php.com'); echo __FILE__; // E:\wamp\www\cookietest\index.php echo '<br>'; ?>
Two.
Visit http://simael.php.com/ Result:
No t4 t5 is because the path is set when setting the cookie
Three.
Visit http://simael .php.com/cookietest/index2.php Result:
The result is the same as (two)
four.
Visit http://simael.php.com/cookietest/test1/index .php Result:
The result is the same as (2)
5.
Modify/cookietest/index.php code
<?php //setcookie('t1','t1',time()+3600,'/','simael.php.com'); //setcookie('t2','t2',time()+3600,'/','php.com'); //setcookie('t3','t3',time()+3600,'/','m0sh1.php.com'); //setcookie('t4','t4',time()+3600,'/cookietest','simael.php.com'); //setcookie('t5','t5',time()+3600,'/cookietest','php.com'); //setcookie('t6','t6',time()+3600,'/cookietest','m0sh1.php.com'); setcookie('t7','t7',time()+3600,'/cookietest/test1','simael.php.com'); setcookie('t8','t8',time()+3600,'/cookietest2/test1','simael.php.com'); echo __FILE__; echo '<br>'; ?>
No t7 t8 proves that the upper level directory cannot obtain the cookies set in the lower level directory
But there is something I don’t understand:
The above screenshot is the effect of the Chrome browser
Look at firefox again
There is t7 in the cookies. The error is that I printed $_COOKIE['t7'] and cannot get t7. Look at the console again
and there is no t7. I can only see t7 under the cookies tab, but I can't get it. (This content is just mentioned by the way - -!)
Six.
Visit http://simael.php.com/cookietest/test1/index.php Result:
This time I saw t7 It shows that the cookie setting in the previous level index.php has taken effect, but it can only be obtained under the corresponding path. Only t2 t5 means that setting cookies for the domain name m0sh1.php.com in simeal.php.com is not effective. At the same time, because the domain set by the cookie is set, the cookie under the simeal domain name cannot be obtained under this domain name, but it can be obtained. Go to the cookie information under the .php.com domain and set the cookie domain to php.com
You can get the cookie information under any *.php.com domain
The above introduces the example analysis of cookie path and domain parameters, including the content. I hope it will be helpful to friends who are interested in PHP tutorials.