许多语言都有类可以更快地连接一堆字符串。例如在.Net中有StringBuilder,在Java中有StringBuffer。在PHP中是否有任何这样的类允许将许多字符串有效地连接成单个字符串?或者可能,PHP有一些内置的功能,默认情况下会使它高效,例如,如果我想创建一个长度为100,000个字符的字符串,并通过添加字符来构建它,一次一个字符?
答案 0 :(得分:6)
使用implode()
(您的字符串必须在数组中)几乎比使用.=
运算符快3倍。
修改强> 好的我赶紧去了。它不是,反正并不总是如此。这种行为不是线性的。
我运行了一些测试(100次迭代)。
10.000 elements:
regular concat: 0.00069347143173218 sec
implode(): 0.00050755023956299 sec (slightly faster)
100.000 elements:
regular concat: 0.0088809585571289 sec
implode(): 0.0054086112976074 sec (much faster)
答案 1 :(得分:2)
PHP中没有这样的东西。 如果您正在生成网页,请考虑使用echo输出每个变量而不是连接它们。 使用输出缓冲区也可能有所帮助。
答案 2 :(得分:0)
没有内置功能。</ p>
使用常规.=