测试代码:

<?php
#echo print 函数效率测试对比
$old = microtime(true);

for($i = 0; $i < 10000000; $i++){
echo "1";
}

$new = microtime(true);
$one = $old - $new;
echo $one . "\n"; #echo 函数测试结果

$old = microtime(true);

for($i = 0; $i < 10000000; $i++){
print "1";
}

$new = microtime(true);
$two = $old - $new;
echo $two . "\n"; #print 函数测试结果

echo ($two - $one) / $two; #效率比较
?>

测试结果:

$one:  0.35927200317383
$two: 0.42829704284668
($two - $one) / $two: 0.16116160694007

多次测试,发现echo比print效率高15%左右。

结果分析

echo和print功能上差不多,但是在基层的定义中:

int print(argument);
void echo(string argument1, [, ...string argumentN]);

print语句成功输出后,print()会返回1,而echo不返回。

                                                                                                                                                                                                                                 .