PHP ,与. 字符串拼接效率比较及原理

正常人在遇到字符串和变量拼接时,往往会写如下代码

$username = 'Stussy';
$level    = '白金';
echo "欢迎".$username.$level."会员";

乍看上去没毛病,实际我们来分析一下这段代码执行流程

  1. 创建一个临时字符串
  2. 把”欢迎”加入字符串
  3. 把变量$username加入字符串
  4. 把变量$level加入字符串
  5. 创建一个新的临时字符串
  6. 放入第一次创建的字符串
  7. 把”会员”加入字符串
  8. 发送最终的临时字符串,打印到屏幕上

看上去很简单的功能,实际上变得非常复杂。那么如何处理呢,答案就是将字符串拼接的’,’替换为’.’。
那我们用实际的代码来测试一下:

$time = microtime(1);
$username = 'Stussy';
$level = '白金';
echo "欢迎".$username.$level.'会员!';
$new_time = microtime(1);
echo $new_time-$time;

得出结果约为 1.28E-5 根据个人服务器性能不同有所差别

$time = microtime(1);
$username = 'Stussy';
$level = '白金';
echo "欢迎",$username,$level,'会员!';
$new_time = microtime(1);
echo $new_time-$time;

得出结果约为 9.05E-6

很明显可以看出两个时间差不在一个幂级上 很明显使用’,’作为连接符的效率要优于使用’.’
希望大家在以后的实际运用中需要多加注意,如有不对的地方还请纠正。

你可能感兴趣的:(PHP)