阅读:2218回复:0
如何优化php字符串echo输出 逗号也可作php连接符
此文给大家分享的是本人的一个php使用心得,如何优化php字符串连接,从而提高程序运行速度。
如下4种方式,都能得到同样的结果,但是,只有第4种方式是最好的。 $foo = 'John SMITH'; echo "Hello $foo, welcome on my website."; echo "Hello " . $foo . " welcome on my website."; echo 'Hello ' . $foo . ' welcome on my website.'; echo 'Hello ', $foo , ' welcome on my website.'; 我敢肯定你们都知道echo '$foo'是不会工作的,但是,我十分肯定的告诉你,那就是使用双引号去显示一个简单的信息,那是非常不好的。 让我们开始吧。第一个不能运行(第二个也一样),因为使用双引号会强制php为此字符串寻找替换值。 第二个好一些,因为php没有替换需要执行的。 第三个更好,因为使用了单引号,因此语言知道你能够脱离进程传送文本,但是“不好”的事情是使用了连接符(不操作,就行第二个例子一样)。 最后一个使用了单引号,并且加了一个连接符。为什么这样处理最好呢? 好吧,让我们看看当使用第三种方法时会发生什么。 php创建一个字符串,包含“Hello”,然后扩充它,加上foo变量(“John SMITH”),然后,再次扩充它,加上“Welcome on my website.”语句,然后,echo能使用它。 然而第四个例子,echo唯一做的一件事是发送“Hello”,接着输出$foo的内容,再输出“Welcome on my website.”。因为echo仅仅是发送文本而没有创建一个需要扩充内容的字符串。 创建一个基准测试后结果如下: 0.0022029876709 0.00211095809937 0.00213599205017 0.00551700592041 第四种方法的执行速度最慢。 从这篇文章,我们应该明白如何优化php字符串连接符,从而提高程序运行速度。 你知道吗?“,”逗号也可作php连接符 在上述第四个例子里,发现原来“,”逗号也可作php的连接符的,我们大家一般都是使用一点“.”作连接符的。 据说,这可能是从C开始带过来的习惯,printf这类的输出都是变参的,echo也继承了这个优良传统。不过需要明白的是,这里的逗号是参数间隔符,不是字符串连接符。 |
|