PHP - 连接或直接在字符串中插入变量
2022-08-30 06:07:01
我想知道,将PHP变量插入字符串的正确方法是什么?
这边:
echo "Welcome ".$name."!"
或者这样:
echo "Welcome $name!"
这两种方法都适用于我的.后者更短,更简单,但我不确定第一个是更好的格式还是被接受为更合适。PHP v5.3.5
我想知道,将PHP变量插入字符串的正确方法是什么?
这边:
echo "Welcome ".$name."!"
或者这样:
echo "Welcome $name!"
这两种方法都适用于我的.后者更短,更简单,但我不确定第一个是更好的格式还是被接受为更合适。PHP v5.3.5
在这两种语法之间,您应该真正选择您喜欢的语法:-)
就个人而言,在这种情况下,我会使用您的第二种解决方案(变量插值),我发现它更容易编写和阅读。
结果将是相同的;即使存在性能影响,这些也无关紧要 1.
顺便说一句,所以我的答案更完整一点:有一天你会想做这样的事情:
echo "Welcome $names!";
PHP会解释你的代码,就好像你试图使用变量一样 - 它不存在。- 请注意,它只适用于字符串的“”而不是“”。。$names
那一天,你需要使用:{}
echo "Welcome {$name}s!"
无需回退到串联。
另请注意,您的第一个语法:
echo "Welcome ".$name."!";
可以进行优化,避免串联,使用:
echo "Welcome ", $name, "!";
(但是,正如我之前所说,这并不重要...)
1 - 除非您正在执行数十万次串联与插值 - 并且情况可能并非如此。
双引号字符串更优雅,因为您不必在每次需要插入变量时都拆分字符串(就像必须对单引号字符串所做的那样)。
但是,如果需要插入函数的返回值,则无法将其插入到双引号字符串中 - 即使您用大括号将其括起来也是如此!
//syntax error!!
//$s = "Hello {trim($world)}!"
//the only option
$s = "Hello " . trim($world) . "!";