zoukankan      html  css  js  c++  java
  • PHP文件缓存包含三种格式

    http://developer.51cto.com/art/200912/166975.htm

    PHP文件缓存的速度一直是PHP程序员们关心的问题,他们一直在探讨着如何才能提高PHP文件缓存的效率来满足自己的开发需求 

    PHP文件缓存内容保存格式主要有三种:

    1.变量 var_export 格式化成PHP正常的赋值书写格式,用的时候直接include文件

    2.变量 serialize 序列化之后保存,用的时候反序列化

    3,变量 json_encode格式化之后保存,用的时候json_decode

    一直以来,我都以为第一种效率最高,因为那是PHP脚本解释器解析PHP脚本的格式,原生的,应该最快,至少读取缓存的效率应该是最高的,可是今天做了个测试,令我大跌眼镜!原来 serialize序列化效率才是最高的,不论是读还是写!

    下面是用来测试的PHP文件缓存的代码:

    <?php
    
     
    $st = microtime(1);     
    for ($i=0;$i<1000;$i++){     
    	$file = var_export($_SERVER,1);     
    	file_put_contents("data/in.php",$file);     
    }  
    echo "include写:".(microtime(1)-$st)." "; 
    
    
    
    
      
      
    $st = microtime(1);     
    for ($i=0;$i<1000;$i++){     
    	$file = file_put_contents("data/se.php" ,serialize($_SERVER));     
    }     
    echo "serialize写:".(microtime(1)-$st)." ";   
    
    
      
    $st = microtime(1);     
    for ($i=0;$i<1000;$i++){     
    $file = file_get_contents("data/se.php");     
    $file = unserialize($file);     
    }     
    echo "serialize读:".(microtime(1)-$st)." ";    
    
    $st = microtime(1);     
    for ($i=0;$i<1000;$i++){     
    $file = file_put_contents("data/js.php",json_encode($_SERVER));     
    }     
    echo "json写:".(microtime(1)-$st)." ";   
    
    
    $st = microtime(1);     
    for ($i=0;$i<1000;$i++){     
    $file = file_get_contents("data/js.php");     
    $file = json_decode($file);     
    }     
    echo "json读:".(microtime(1)-$st)." ";  
    
    
    
    
    ?>
    

      

  • 相关阅读:
    php分享三十:php版本选择
    php分享二十九:命名空间
    高性能mysql读书笔记(一):Schema与数据类型优化
    php分享二十八:mysql运行中的问题排查
    php分享二十七:批量插入mysql
    php分享二十六:读写日志
    Python | 一行命令生成动态二维码
    Python-获取法定节假日
    GoLang-字符串
    基础知识
  • 原文地址:https://www.cnblogs.com/cblx/p/9217171.html
Copyright © 2011-2022 走看看