首页 > 建站教程 > PHP教程 >  关于php几种字符串连接方法的执行效率正文

关于php几种字符串连接方法的执行效率

php大致有三种字符串连接:

    1、直接用“.”来进行连接。
    2、用“.=”进行连接。
    3、先压入数组,再通过join函数连接。

下面分别对这三种方法的效率进行测试:

第一种方法代码如下:
<?php   
   function get_tm() {
   list ( $usec, $sec ) = explode ( " ", microtime () );
   return (( float ) $usec + ( float ) $sec);
   }
    
   $temp="test";
   $result="";
   define("num",100000);
   $start=get_tm();
   
   for($i=0;$i<num;$i++)
   {
     $result=$result.$temp;
   }
   echo get_tm()-$start;
?>
运行4次,除去第一次运行时间,三次时间分别为:

22.165272951126
22.003527164459
22.15947508812

第二种方法代码如下:
<?php     
   function get_tm() {
   list ( $usec, $sec ) = explode ( " ", microtime () );
   return (( float ) $usec + ( float ) $sec);
   }
    
   $temp="test";
   $result="";
   define("num",100000);
   $start=get_tm();
   
   for($i=0;$i<num;$i++)
   {
     $result.=$temp;
   }
   echo get_tm()-$start;
    
?>
运行4次,除去第一次运行时间,三次时间分别为:

3.1967310905457
3.1296961307526
3.0872850418091

第三种方法代码如下:
<?php      
   function get_tm() {
   list ( $usec, $sec ) = explode ( " ", microtime () );
   return (( float ) $usec + ( float ) $sec);
   }
    
   $temp="test";
   $result="";
   $arr=array();
   define("num",100000);
   $start=get_tm();
   
   for($i=0;$i<num;$i++)
   {
     array_push($arr, $temp);
   }
   $result=join($arr);
   echo get_tm()-$start;
    
?>
运行4次,除去第一次运行时间,三次时间分别为:

3.3184430599213
3.2759411334991
3.2663381099701

由上可见,直接通过.进行字符串的连接效率最为低下。