PHP - 连接或直接在字符串中插入变量
我想知道,将PHP变量插入字符串的正确方法是什么?
这条路:
echo "Welcome ".$name."!"
或者这样:
echo "Welcome $name!"
这两种方法都适用于我的PHP v5.3.5
。后者更短更简单,但我不确定第一个是更好的格式还是更合适。
没有找到相关结果
已邀请:
12 个回复
俺呵誓放胳
PHP将解释您的代码,就像您尝试使用
变量一样 - 这是不存在的。 那天,你需要使用
:
无需回退到连接。 另请注意您的第一个语法:
可能可以优化,避免连接,使用:
(但是,正如我之前所说,这并不重要......) 1 - 除非你正在进行成千上万的连接与插值 - 而且情况可能并非如此。
babsoft
乐遣杀屎
来源:sprintf()
宦哨抹存胳
苦诫
醒荒捆府绣
和
之类的拐杖,IMO会增加混淆并使连接可读性几乎等同,如果不是更好的话。 只要你需要在var周围包装函数调用,例如
,就必须切换到串联。 AFAIK,你不能嵌入常量。 在某些特定情况下,“使用vars嵌入的双引号”可能很有用,但一般来说,我会选择连接(方便时使用单引号或双引号)
布埃郝卞簿
,
,
! 在任何其他情况下使用它的开销都是不值得的。 您还应该检查PHP变量连接,phpbench.com以获取有关不同处理方法的一些基准测试。
殿虫
委婪绷冗诉
关于使用单引号或双引号,差异可以忽略不计,您可以使用大量字符串进行测试以自行测试。
你换
玩翁文醚碱
命令而你的变量是数组成员,那么你不应该在数组的
里面使用单引号(如:
);例如,如果您将此字符串用作SQL命令,则会得到
:
正确的字符串是:
献导外拘
。双引号唯一可以做的就是单引号不能做的是使用
,
,
等。 可读性:没有区别(可能适用个人偏好)。 可写性/可重写性/调试:在单行语句中没有区别,但在处理多行时,在调试或写入时更容易注释/取消注释行。例如:
减少逃脱:单引号。对于单引号,您只需要转换2个字符(
和
)。对于双引号,您需要转义2个字符(
,
)和3个以上(如果需要)(
,
和
)。 减少变化:单引号。例如,如果您有以下代码:
你需要增加1到$ i,所以它变得像:
但是对于双引号,你需要改变这个:
对此:
结论:使用您喜欢的。