Detailed explanation of PHP simple cache file class_PHP tutorial

WBOY
Release: 2016-07-13 17:41:42
Original
925 people have browsed it

PHP has made great progress in recent years due to its power and scalability. Compared with traditional ASP websites, PHP has an absolute advantage in speed. If you want to transfer 60,000 pieces of data to mssql, PHP takes 40 seconds, and ASP is no less than 2 Minutes. However, as the website has more and more data, we are eager to call the data faster. We do not need to delete it from the database every time. We can get it from other places, such as a file or a certain memory address. This is PHP's caching technology is Cache technology.

  In-depth analysis
Generally speaking, the purpose of caching is to put data in one place to make access faster. There is no doubt that memory is the fastest, but, Can hundreds of M of data be stored in the internal memory? This is unrealistic. Of course, sometimes it is temporarily placed in the server cache. For example, if the ob_start() cache page is turned on, the page content will be cached in the memory before sending the file header. You know Wait for the page output to be automatically cleared or wait for the return of ob_get_contents, or be cleared by ob_end_clean display. This can be well utilized in the generation of static pages and can be well reflected in templates.

In addition, there is an object application in ASP that can save public parameters. This is also considered a cache, but in PHP, I have not seen developers produce such an object. Indeed, it is not necessary. ASP .NET's page caching technology uses viewstate, and cache is file association (not necessarily accurate). When the file is modified, the cache is updated. If the file is not modified and does not time out (note 1), the cache is read and the result is returned. , this is the idea, look at this source code:
if (!@IS_DIR ($ Cache_diRNAME)) {
if (!@mkdir ($ cache_dirname, 0777)) {
$ This- & gt; warn (cache file does not Exists and cannot be created, it needs to be created manually.);                                    
                                                                                                                                                                                                                                (){
echo Cache class bye.;
}
function get_url() {
if (!isset($_SERVER[REQUEST_URI])) {                                                                                                         _SERVER[REQUEST_URI];                                                                            $url .= (!emptyempty($_SERVER[QUERY_STRING])) ? . $_SERVER[QUERY_STRING] : ; 
                                                                                                     echo "An error occurred:< pre>".$errorstring.""; if( !$fso=fopen($pageurl,w)){                                                                                                                                                                                                                             
                                                                                                                                                                                                 return false; 🎜>} if (! FWRITE ($ FSO, $ PageData)) {// Write intewets, Serialize writes other formats
$ this- & gt; warns (unable to write cache files.);;;); //trigger_error
return false;
}
flock($fso,LOCK_UN);//Release lock
                                                                                                                                                  
function display_cache($cacheFile){
if(!file_exists($cacheFile)){
$this->warn(Cache file cannot be read.);//trigger_error
return false;
                }  
                echo 读取缓存文件:.$cacheFile;  
                //return unserialize(file_get_contents($cacheFile));  
                $fso = fopen($cacheFile, r);  
                $ data = fread($fso, filesize($cacheFile));
fclose($fso);
return $data;




http://www.bkjia.com/PHPjc/486128.html

www.bkjia.com

true

http: //www.bkjia.com/PHPjc/486128.html

TechArticlePHP has made great progress in recent years due to its power and scalability. Compared with traditional ASP, PHP The website has an absolute advantage in terms of speed. If you want to transfer 60,000 pieces of data from mssql to PHP, it will take 40 seconds, and ASP will not be faster...
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