我的代码看起来像这样:
echo '<pre>"';
echo str_pad("Hello, world !", 26);
echo '"</pre>';
为什么 PHP 使用这种丑陋的语法在单引号和双引号中插入标签?它有什么特殊含义吗?
我的代码看起来像这样:
echo '<pre>"';
echo str_pad("Hello, world !", 26);
echo '"</pre>';
为什么 PHP 使用这种丑陋的语法在单引号和双引号中插入标签?它有什么特殊含义吗?
单引号表示之间是字符串,而不是比较运算符或除法运算符。
第 1 行和第 3 行的双引号是作为输出的一部分的文字双引号。
其输出将是:
<pre>"Hello, world ! "</pre>
上述代码的输出将是
<pre>"Hello, world ! "</pre>
输出双引号!
但是,一般来说,用单引号将字符串括起来'
会阻止 PHP 解析字符串以查找替换变量,而用双引号"
替换变量名。
这是因为它们适用于不同的事物。
<?php
echo 'Something $variable1 \n'; // Will output `Something $variable1 \n`
?>
<?php
$variable1 = 'asd'
echo "Something $variable1"; // Will output `Something asd`
?>
'
基本上说不要解释里面的任何东西,只是输出它。
"
会解释里面的任何东西。
如果要添加'
或"
在它们包围的字符串中,则需要对它们进行转义:
<?php
echo 'I want \' my semicolon to appear'; //will output: `I want ' my semicolon to appear`
?>
只是一个字符串。" " 或 ' ' 之间的任何内容都被视为字符串。