|
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 由上可见,直接通过.进行字符串的连接效率最为低下。 |