首頁  >  文章  >  後端開發  >  php中3種字串連接的效率比較實例詳解

php中3種字串連接的效率比較實例詳解

伊谢尔伦
伊谢尔伦原創
2017-06-27 13:23:321354瀏覽

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;
   
?>


##一次運行時間,三次時間分別為:

3.3184430599213

3.2759411334991

3.2663381099701######由上可見,直接透過.進行字串的連接效率最為低。 ###

以上是php中3種字串連接的效率比較實例詳解的詳細內容。更多資訊請關注PHP中文網其他相關文章!

陳述:
本文內容由網友自願投稿,版權歸原作者所有。本站不承擔相應的法律責任。如發現涉嫌抄襲或侵權的內容,請聯絡admin@php.cn