1.单引号定义字符串
2.双引号定义字符串
3.定界符定义字符串
1.单引号不能解析 转义符 \n 换行 \r 回车 \t tab
echo 'this is \n a simple \n \r \t string';
//this is \n a simple \n \r \t string
2.单引号不能解析变量
$name = '苹果';
$price = '6666';
echo '我想买一台 $name手机,价格是$price';
//我想买一台 $name手机,价格是$price
1.双引号可以解析 转义符 \n 换行 \r 回车 \t tab
echo "this is \n a simple \n \r \t string";
//this is
//a simple
//
// string
2.双引号可以解析变量
$name = '苹果';
$price = '6666';
echo "我想买一台$name 手机(变量后面不加空格连接字符串会报错),价格是$price";
//我想买一台苹果 手机,价格是6666 (有空格)
//加花括号避免空格和报错
echo "我想买一台{$name}手机,价格是{$price}";
//我想买一台苹果手机,价格是6666
1.可以解析转义符,变量
2.适合输出大量的多行的内部存在多个变量的PHP字符串
//定界符格式:string为任意字符串,但是格式要统一
// <<<string
// code
// string;
$name = '苹果';
$price = '6666';
echo <<<DJ
<table border="1">
<tr>
<td>{$name}</td>
<td>{$price}</td>
</tr>
</table>
DJ;
echo <<<nm
<table border="1">
<tr>
<td>{$name}</td>
<td>{$price}</td>
</tr>
</table>
nm;
$name = '苹果';
$price = 'apple';
echo $price[0]; //a
echo $price{1}; //p PHP8.0版本不再支持
//因为一个汉字占3个字符
echo $name[0].$name[1].$name[2]; //苹