双引号中可以解析变量,而单引号中不能。
<?php
$int = 10;
echo "这个变量是$int"; //双引号可以解析变量
echo "<br />";
echo '这个变量是$int'; //单引号不能解析变量
?>
<?php
$int = 10;
echo "这个$int变量是"; //这种会出现错误,$之后所有的字符都被认为是变量名,但实际上是没被定义的,所以出现错误。
echo "这个$int 变量是"; //这种用特殊字符断开可以解决上述错误。特殊字符包括:空格、逗号、#,【】不是特殊符号,他是数组下标
echo "这个{$int} 变量是"; //给变量加{}是解决不想断开,又能解析的方法,单引号不能解析变量,所以加{}也没用
?>
在双引号中可以用转移字符,单引号中转义字符\只能转义单引号,和转义转义字符\自己。
<?php
$int = 10;
echo "这个变量是\$int"; //通过转义字符将本来能解析的变量转义成$符号
echo '<br />';
echo 'hello wo\rld'; //单引号中\r并没有被转义
echo '<br />';
echo 'hello \'my\' world'; //单引号中转义单引号
echo '<br />';
echo 'I\\YOU'; //单引号转义转义符自己
?>
转义符号:
\n
换行
\r
回车
\t
水平制表符
\\ 反斜线
\$
美元符号
\"
双引号