ThinkSSL🔒 一键申购 5分钟快速签发 30天无理由退款 购买更放心 广告
## **7.3更灵活的`Heredoc`和`Nowdoc`语法** ~~~ //heredoc可以解析变量,nowdoc则不能解析变量 $name='dash'; //原heredoc $str=<<<STR 这是文本第一行 这是文本第二行.{$name}over! STR; echo $str;//这是文本第一行 这是文本第二行.dashover! //原nowdoc $str = <<<'EOD' Example of string spanning multiple lines using nowdoc syntax.{$name}over! EOD; echo $str;//Example of string spanning multiple lines using nowdoc syntax.{$name}over! //可以使用缩进,使用缩进时doc内容的每行都会跳过相应的缩进 (下例两行的缩进都被剥除了) $str=<<<STR 这是文本第一行 | 这是文本第二行 STR; | STR; echo $str;// 这是文本第一行 | 这是文本第二行 STR; | 两行的缩进都被剥除了 //结束标记不再需要独立一行 $str=<<<STR 这是文本第一行 这是文本第二行 STR;echo $str;//这是文本第一行 这是文本第二行 //在某些情况下不用紧跟分号了 $data = ["元素", <<<STR 这是文本第一行 这是文本第二行 STR, 42,]; print_r($data);//Array ( [0] => 元素 [1] => 这是文本第一行 这是文本第二行 [2] => 42 ) $str=<<<STR 这是文本第一行 这是文本第二行 STR echo $str;//这中情况就会报错 ~~~