单引号:
- 想表达单引号自身,需要用反斜线()转义
- 想表达反斜线()自身,需要用双反斜线(\)
- 其他任何转义序列(r)(n)等,都会当作字符串处理
//输出 a'bcd
echo 'a\'bcd';
//输出 a\bcd
echo 'a\\bcd';
//输出 a\bcd
echo 'a\bcd';
//输出 a\nbcd
echo 'a\nbcd';
双引号
- 将对一些特殊字符进行转义
header 1 |
header 2 |
n |
换行符 |
r |
回车 |
t |
水平制表符 |
v |
垂直制表符 |
e |
esc |
f |
换页 |
\\ |
反斜线 |
\$ |
美元标记 |
\" |
双引号 |
\[0-7]{1,3} |
符合该正则表达式序列的是一个以八进制方式来表达的字符 |
\x[0-9A-Fa-f]{1,2} |
符合该正则表达式序列的是一个以十六进制方式来表达的字符 |
- 变量解析
$a = 'abc';
//输出 abc
echo "{$a}";
//输出 abc
echo "${a}";
//输出 { abc}
echo "{ $a}"
//报错:Use of undefined constant a - assumed 'a'
echo "${ a}";
//输出 abcdef
// A会被优先作为常量处理
// 然后再解析 $b
define("A",'b');
$b = 'cdef';
echo "${ A}";
heredoc
- Heredoc 结构就象是没有使用双引号的双引号字符串,这就是说在 heredoc 结构中单引号不用被转义。
//输出 a bc' def
echo <<<begin
a\tbc' def
begin;
Nowdoc 结构
- 就象 heredoc 结构类似于双引号字符串,Nowdoc 结构是类似于单引号字符串的。Nowdoc 结构很象 heredoc 结构,但是 ==nowdoc 中不进行任何解析操作==。
//输出:a\tbc def '
echo <<<'EOT'
a\tbc def '
EOT;
**粗体** _斜体_ [链接](http://example.com) `代码` - 列表 > 引用
。你还可以使用@
来通知其他用户。