我可以用单引号回显变量吗?
我可以用单引号回显变量吗?
例如
echo 'I love my $variable.';
我需要这样做,因为我也有很多 HTML 需要回显。
如果你对这篇内容有疑问,欢迎到本站社区发帖提问 参与讨论,获取更多帮助,或者扫码二维码加入 Web 技术交流群。
绑定邮箱获取回复消息
由于您还没有绑定你的真实邮箱,如果其他用户或者作者回复了您的评论,将不能在第一时间通知您!
我可以用单引号回显变量吗?
例如
echo 'I love my $variable.';
我需要这样做,因为我也有很多 HTML 需要回显。
由于您还没有绑定你的真实邮箱,如果其他用户或者作者回复了您的评论,将不能在第一时间通知您!
接受
或继续使用网站,即表示您同意使用 Cookies 和您的相关数据。
发布评论
评论(11)
您必须使用:
此方法将变量附加到字符串。
或者您可以使用:
注意这里使用的双引号!
You must either use:
This method appends the variable to the string.
Or you could use:
Notice the double quotes used here!
如果有很多文本,请查看 Heredoc 语法。
If there's a lot of text, have a look at the Heredoc syntax.
文档说:
所以答案是否定的,不是这样的。
解决方案很简单:
不要
echo
HTML。只要您不创建类似部分视图或东西†,就没有理由回显 HTML。将 PHP 嵌入到 HTML 中:
好处是:
†:在本例中
heredoc
[docs] 是最不糟糕的选择。The documentation says:
So the answer is no, not in this way.
The solution is simple:
Don't
echo
HTML.As long you are not creating like partial views or stuff †, there is no reason to echo HTML. Embed PHP into HTML instead:
The benefits are:
†: In this case
heredoc
[docs] is the least worse alternative.不会。
'
不会解析变量。使用或
No.
'
will not parse variables. useor
不可以。变量(和特殊字符)仅在用双引号分隔的字符串中扩展。如果您想在单引号分隔的字符串中包含变量,则必须将其连接起来:
如果您希望使用由双引号分隔的字符串,也可以转义 HTML 的双引号:
请参阅 PHP 手册 关于字符串,特别是字符串解析,了解更多信息。
No. Variables (and special characters) only expand in strings delimited with double quotes. If you want to include a variable in a single-quote delimited string, you have to concatenate it instead:
You could also escape the double quotes of your HTML if you'd rather use strings delimited by doble quotes:
See the PHP manual on strings, especially the part on string parsing, for more information.
不在字符串内,但您可以退出字符串并连接变量。
另一个选项是转义双引号。
或者只是进出 php 来回显变量(虽然丑陋)。
最后,这里有一个允许单引号和双引号以及变量的heredoc格式。
not within the string, but you can exit the string and concatenate the variable in.
The other option would just be to escape the double quotes.
Or just go in and out of php to echo variables (although ugly).
Lastly there is heredoc format that allows both single and double quotes along with variables.
试试这个
Try this
摘自 php.net:
“注意:与双引号和定界符语法不同,特殊字符的变量和转义序列在单引号字符串中出现时不会被扩展。”
所以答案是否定的,你不能。但你可以这样做:
这样会更干净。
Taken from php.net:
"Note: Unlike the double-quoted and heredoc syntaxes, variables and escape sequences for special characters will not be expanded when they occur in single quoted strings."
So the answer is no you can't. But you can do it like this :
It will be cleaner this way.
除了其他用户提到的解决方案(例如字符串连接)之外,您还可以使用占位符,如下所示;
请注意 %s 代表字符串。
Beside the solutions mentioned by other users such as string concatenation, you can use placeholders as follows;
Note the %s is for string.
就我而言,我更改了命令,如下所示,它对我有用:在每个单引号(')旁边添加双引号两次(“”)
输出:
变量='1,2,3,repmgr'
#如何在单引号 bash shell 脚本中打印 echo 中的变量
In my case, I have changed my command as follows and it worked for me:Added double quotes twice("") beside every single quote(')
Output:
variable='1,2,3,repmgr'
#How to print a variable in echo within a single quote bash shell script
使用转义单引号将文本字符串括起来,如下所示:
=>
“我爱我的狗”
use the escape sing-quote to surround the text string as:
=>
'I love my dog'