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!

APHPDependencyInjectionContainerisatoolthatmanagesclassdependencies,enhancingcodemodularity,testability,andmaintainability.Itactsasacentralhubforcreatingandinjectingdependencies,thusreducingtightcouplingandeasingunittesting.

Select DependencyInjection (DI) for large applications, ServiceLocator is suitable for small projects or prototypes. 1) DI improves the testability and modularity of the code through constructor injection. 2) ServiceLocator obtains services through center registration, which is convenient but may lead to an increase in code coupling.

PHPapplicationscanbeoptimizedforspeedandefficiencyby:1)enablingopcacheinphp.ini,2)usingpreparedstatementswithPDOfordatabasequeries,3)replacingloopswitharray_filterandarray_mapfordataprocessing,4)configuringNginxasareverseproxy,5)implementingcachingwi

PHPemailvalidationinvolvesthreesteps:1)Formatvalidationusingregularexpressionstochecktheemailformat;2)DNSvalidationtoensurethedomainhasavalidMXrecord;3)SMTPvalidation,themostthoroughmethod,whichchecksifthemailboxexistsbyconnectingtotheSMTPserver.Impl

TomakePHPapplicationsfaster,followthesesteps:1)UseOpcodeCachinglikeOPcachetostoreprecompiledscriptbytecode.2)MinimizeDatabaseQueriesbyusingquerycachingandefficientindexing.3)LeveragePHP7 Featuresforbettercodeefficiency.4)ImplementCachingStrategiessuc

ToimprovePHPapplicationspeed,followthesesteps:1)EnableopcodecachingwithAPCutoreducescriptexecutiontime.2)ImplementdatabasequerycachingusingPDOtominimizedatabasehits.3)UseHTTP/2tomultiplexrequestsandreduceconnectionoverhead.4)Limitsessionusagebyclosin

Dependency injection (DI) significantly improves the testability of PHP code by explicitly transitive dependencies. 1) DI decoupling classes and specific implementations make testing and maintenance more flexible. 2) Among the three types, the constructor injects explicit expression dependencies to keep the state consistent. 3) Use DI containers to manage complex dependencies to improve code quality and development efficiency.

DatabasequeryoptimizationinPHPinvolvesseveralstrategiestoenhanceperformance.1)Selectonlynecessarycolumnstoreducedatatransfer.2)Useindexingtospeedupdataretrieval.3)Implementquerycachingtostoreresultsoffrequentqueries.4)Utilizepreparedstatementsforeffi


Hot AI Tools

Undresser.AI Undress
AI-powered app for creating realistic nude photos

AI Clothes Remover
Online AI tool for removing clothes from photos.

Undress AI Tool
Undress images for free

Clothoff.io
AI clothes remover

Video Face Swap
Swap faces in any video effortlessly with our completely free AI face swap tool!

Hot Article

Hot Tools

Dreamweaver Mac version
Visual web development tools

SublimeText3 Mac version
God-level code editing software (SublimeText3)

EditPlus Chinese cracked version
Small size, syntax highlighting, does not support code prompt function

MinGW - Minimalist GNU for Windows
This project is in the process of being migrated to osdn.net/projects/mingw, you can continue to follow us there. MinGW: A native Windows port of the GNU Compiler Collection (GCC), freely distributable import libraries and header files for building native Windows applications; includes extensions to the MSVC runtime to support C99 functionality. All MinGW software can run on 64-bit Windows platforms.

SecLists
SecLists is the ultimate security tester's companion. It is a collection of various types of lists that are frequently used during security assessments, all in one place. SecLists helps make security testing more efficient and productive by conveniently providing all the lists a security tester might need. List types include usernames, passwords, URLs, fuzzing payloads, sensitive data patterns, web shells, and more. The tester can simply pull this repository onto a new test machine and he will have access to every type of list he needs.
