<?php
$a = '12345';
// 这样是有效的:
echo "qwe{$a}rty"; // 输出:qwe12345rty,此处使用了花括号来包含变量
echo "qwe" . $a . "rty"; // 输出:qwe12345rty,此处采用了字符串连接操作
echo "<td>".$row['id']."</td>";
// 下面这样则无效:
echo 'qwe{$a}rty'; // 输出:qwe{$a}rty,单引号中的内容不进行解析,所以变量未被替换
echo "qwe$arty"; // 输出:qwe,因为此处的$a误写为$arty,而$arty并未定义,因此只输出了固定文本部分
echo "<td>.$row['id'].</td>";
?>
这段PHP代码说明:
在双引号 (
"
) 包围的字符串中,可以直接嵌入变量,并且可以使用花括号{}
来明确标识变量边界。PHP会自动将变量的值插入到字符串中。使用点运算符
.
连接字符串和变量也是一种常见的字符串拼接方式。单引号 (
'
) 包围的字符串不会解析其中的变量,因此'qwe{$a}rty'
输出时$a
不会被替换成其实际值。如果在双引号包围的字符串中引用一个未定义的变量(如
"qwe$arty"
),PHP会尝试查找名为$arty
的变量,但因该变量未定义,所以只会输出字符串中已定义的部分。