好得很程序员自学网

<tfoot draggable='sEl'></tfoot>

PHP中json_encode、json_decode与serialize、unserialize

PHP中json_encode、json_decode与serialize、unserialize

json_encode和json_decode的效率并没有比serialize和unserialize的效率高,在反序列化的时候性能相差两倍左右,PHP 5.3执行效率比PHP 5.2略有提升,代码如下:

<?php  $target  =  array  (   'name'  =>  '全能头盔' ,   'quality'  =>  'Blue' ,   'ti_id'  => 21302,   'is_bind'  => 1,   'demand_conditions'  =>   array  (   'HeroLevel'  => 1,   ),   'quality_attr_sign'  =>   array  (   'HeroStrength'  => 8,   'HeroAgility'  => 8,   'HeroIntelligence'  => 8,   ),   );   $json  = json_encode( $target );   $seri  = serialize( $target );   echo   "json : "  .  strlen ( $json ) .  " " ;   echo   "serialize : "  .  strlen ( $seri ) .  " " ;   $stime  = microtime(true);   for  ( $i  = 0;  $i  < 10000;  $i  ++)   {   json_encode( $target );   }   $etime  = microtime(true);   echo   "json_encode : "  . ( $etime  -  $stime ) .  " " ;   //----------------------------------    $stime  = microtime(true);   for  ( $i  = 0;  $i  < 10000;  $i  ++)   {   json_decode( $json );   }   $etime  = microtime(true);   echo   "json_decode : "  . ( $etime  -  $stime ) .  " " ;   //----------------------------------    $stime  = microtime(true);   for  ( $i  = 0;  $i  < 10000;  $i  ++)   {   serialize( $target );   }   $etime  = microtime(true);   echo   "serialize : "  . ( $etime  -  $stime ) .  " " ;   //----------------------------------    $stime  = microtime(true);   for  ( $i  = 0;  $i  < 10000;  $i  ++)   {   unserialize( $seri );  //开源代码phpfensi测试数据   }   $etime  = microtime(true);   echo   "unserialize : "  . ( $etime  -  $stime ) .  " " ;   echo   'DONE.' ;   ?> 

查看更多关于PHP中json_encode、json_decode与serialize、unserialize的详细内容...

  阅读:46次