Comparative introduction to SESSION and COOKIE under PHP

jacklove
Release: 2023-03-27 11:54:01
Original
1459 people have browsed it

You will encounter many problems in caching. This article will compare SESSION and COOKIE.

[Cookie]

1. Definition->Exists in the browser, even if the browser is closed or the connection is interrupted, the user can still maintain the data status;

2. Life cycle -> By default, during the browser session (data is saved in memory), the validity period is set, and the data is saved on the hard disk;

3. Effective path -> The effective path path needs to be set, the default path Is the current path. If all paths need to be set to '/';

4. Valid domain name->Set the domain name domain, indicating that the path under the domain name is valid, and the default is the current path of the current domain name;

5. Cookie deletion-> Directly use setcookie("name",time()-1);

6. When does the cookie take effect-> After the setcookie() function, the client will be notified The client sends a cookie value. If it does not refresh or browse the next page, the client will not return the cookie;

7. Number of cookies -> A browser supports up to 30 cookies, and each The capacity of cookies cannot exceed 4KB, and the number of cookies set for each website cannot exceed 20;

【Session】

1. How to use -> Initialize with session_start() before use , create or load a session_id;

2. Life cycle-> From the time the user accesses the page to the time the user disconnects from the website, a SESSION ID will be automatically generated to represent the current user's relationship with other users. User;

3. Transfer data-> When the connection is not disconnected, data can be transferred between different pages

4. In the PHP environment, the session data is stored-> Here It’s more complicated. I copied a paragraph directly. In layman’s terms, it means configuring the storage path according to the configuration file. According to the id command file name, single file storage or hierarchical storage is performed. The original words are as follows:

[plain] view plain copy

Where is the data of SESSION stored?

Of course it is on the server side, but it is not saved in memory, but in a file or database.

By default, the SESSION saving method set in PHP.ini is files (session.save_handler = files), that is, SESSION data is saved by reading and writing files, and the directory where SESSION files are saved is determined by session.save_path Specify that the file name is prefixed with sess_, followed by the SESSION ID, such as: sess_c72665af28a8b14c0fe11afe3b59b51b. The data in the file is the SESSION data after serialization.

If the number of visits is large, more SESSION files may be generated. In this case, you can set up a hierarchical directory to save SESSION files. The efficiency will be greatly improved. The setting method is: session.save_path="N;/save_path ", N is the number of hierarchical levels, save_path is the starting directory.

When writing SESSION data, PHP will obtain the client's SESSION_ID, and then use this SESSION ID to find the corresponding SESSION file in the specified SESSION file storage directory. If it does not exist, create it, and finally store the data. After serialization, write to file [3]. Reading SESSION data is a similar operation process. The read data needs to be deserialized and the corresponding SESSION variable is generated.

Notes:

1. There cannot be any output before using the session_start() function;

2. The session will not be deleted because the browser is closed. But the default expiration time of cookies with session IDs is session level. That is to say, if the user closes the browser, the session ID stored on the client will be lost, but the session data stored on the server will not be deleted immediately. From the client, that is, the browser, it seems that the session has been deleted (because we have lost the session ID and cannot find the original session data).

This article explains the difference between SESSION and COOKIE. For more related content, please pay attention to the php Chinese website.

Related recommendations:

Understand how to obtain the client IP in php

Detailed explanation of the use of Session in php

Introduction to the differences between die(), exit(), and return in php

The above is the detailed content of Comparative introduction to SESSION and COOKIE under PHP. For more information, please follow other related articles on the PHP Chinese website!

Related labels:
source:php.cn
Statement of this Website
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
Popular Tutorials
More>
Latest Downloads
More>
Web Effects
Website Source Code
Website Materials
Front End Template