PHP:在1行还是多行连接更好?或者有区别吗?

Dar*_*ein 10 php concatenation

是否存在差异,或者是否优于以下其他方面:

$var = '';
...
$var .= 'blah blah';
$var .= $var2;
$var .= 'blah blah';
Run Code Online (Sandbox Code Playgroud)

要么

$var = '';
...
$var .= 'blah blah' . $var2 . 'blah blah';
Run Code Online (Sandbox Code Playgroud)

是否存在速度差异或是否有理由选择其中一个?

jmu*_*llo 23

PEZ和Topbit都是正确的.我只想指出一些我认为比这里看到的更好的东西:

$var  = "line 1 \n";
$var .= "line 2 \n";
Run Code Online (Sandbox Code Playgroud)

$var = "line 1 \n"
     . "line 2 \n";
Run Code Online (Sandbox Code Playgroud)

我更喜欢第二个到第一个,因为在视觉上很明显你的结果是一个字符串$ var.它还可以防止愚蠢的错误:

$var  = "line 1 \n";
$var .= "line 2 \n";
$vat .= "line 3 \n";
$var .= "line 4 \n";
Run Code Online (Sandbox Code Playgroud)

  • 起初没有看到错误......我猜这证明了你的观点! (3认同)

Iva*_*van 7

如果您回显字符串,则会有一点不同.

echo $var1,$var2,$var3 // comma (echo with multiple arguments)
Run Code Online (Sandbox Code Playgroud)

比...快一点

echo $var1.$var2.$var3 // dot   (concat and echo)
Run Code Online (Sandbox Code Playgroud)


PEZ*_*PEZ 6

对于一些简短的字符串来说无关紧要.使用更清楚的东西阅读.

但是如果你有很多(比如数千个)那么短的那些,你可能想把它们放在一个数组中并将它们连接在一起.(碰巧这样的代码通常像使用".="连接字符串一样容易阅读,所以你不要牺牲性能祭坛的清晰度.)

编辑:我不认为我的上述想法是有效的.PHP的字符串是可变的,对吗?