Home  >  Article  >  Backend Development  >  Learn PHP Cookie processing function_php example

Learn PHP Cookie processing function_php example

WBOY
WBOYOriginal
2016-08-17 13:02:30890browse

Let’s first take a look at what cookies are?

A cookie is a small file left by the server on the client side to identify the user or store some data (note that the session is stored on the server side, which is one of the differences between the two). When we usually log in to a portal, there will be an option to "save login" or "automatically log in next time". When we check it, the server will create a cookie file in our browser to save our information. Whenever a computer requests a page through the browser, it sends a cookie at the same time. With PHP, cookie values ​​can be created and retrieved. Cookies play a very important role in the web. Cookies were created as early as the Netscape browser. Cookies are often used in user authentication systems.

1.Create cookie
The function setcookie() can generate cookies in PHP. Since cookies are the content of the HTTP header part, setcookie() must be called before any data is output. This restriction is similar to header(), defined:
bool setcookie( string name[,string value][,int expire][,string path][,string domain][,bool secure][,bool httponly])

So many parameters! Σ(⊙▽⊙"a Don’t worry, let’s take a look at the functions of each parameter:
name : Required, indicating the name of the cookie.
value: Optional, indicating the cookie value, stored in the client. When empty, it means revoking the cookie information in the client (this way the cookie can be deleted).
expire: Optional, indicating the validity deadline of the cookie, that is, the expiration time. If it is not specified or specified as 0, it usually expires when the browser is closed.
path: Optional, valid cookie path.
domain: Optional, cookie valid domain name.
secure: Indicates that it is only valid when HTTPS secure transmission.
Example (create a cookie with name test and value China):

 <&#63;php
 setcookie("test",China");
 &#63;> 

The value given using setcookie() can only be a number or a string, not other complex structures.

2. Get cookies
After creating the cookie, you can use the predefined variable $_COOKIE to obtain the cookie. However, cookies can only be obtained on other pages, because in php, the cookies set will not take effect on this page unless the page is refreshed.
Example:

 <&#63;php
 setcookie("test","China");
 echo "cookie is ".$_COOKIE["test"];
 &#63;> 

The reason why the page needs to be refreshed here is because the value of the cookie will not be stored in the C OOKIE variable immediately after calling setcookie(), but will be sent to the server with the http request. Only then will the value of the cookie appear in the COOKIE variable, but as the http request is sent to the server, then the cookie value will appear in _COOKIE. (Does the blog park not support dollar signs...ahhhh)

3. Cookie validity period
Cookies have a life cycle, which is how long the cookie is valid. A third parameter can be set to set the validity time.
Examples (several ways to set cookie validity time):

setcookie("cookie_one","A",time()+60*60);    //cookie在一小时后失效
setcookie("cookie_two","B",time()+60*60*24);  //cookie在一天后失效
setcookie("cookie_three","C",mktime(23,53,19,10,09,2020));  //cookie在2020年10月9日23时53分19秒失效
setcookie("cookie_four","D");   //关闭浏览器后cookie失效  

4.Valid path of cookie
The path in the cookie is used to control the path under which the set cookie is valid. The default is '/', which is valid under all paths, that is, it is valid under the entire server domain name. When other paths are set, it will only Valid under the set path and sub-path, for example:
setcookie('test', time(), 0, '/path');
The above settings will make test valid under /path and the subpath /path/abc, but the cookie value of test cannot be read in the root directory.

Under normal circumstances, most of them use all paths. Only in rare cases when there are special needs, the path will be set. In this case, the cookie value will only be passed in the specified path, which can save data transmission and enhance security. and improve performance.

5. Delete cookies
Deleting cookies is relatively simple and is also achieved through setcookie() (do not use unset()!!!) The following code is a simple example: setcookie("test","");
Delete cookies by setting the second parameter to empty. If you provide specific values ​​for the cookie when you set it, then when you delete the cookie, you still need to provide those parameters so that PHP can delete the cookie correctly.

The above is the entire content of this article. I hope it will be helpful to everyone’s study. I also hope that everyone will support Script Home.

Statement:
The content of this article is voluntarily contributed by netizens, and the copyright belongs to the original author. This site does not assume corresponding legal responsibility. If you find any content suspected of plagiarism or infringement, please contact admin@php.cn