PHP中包含单引号和双引号的复杂字符串的定义和处理方法
PHP中有时会遇到很多格式非常复杂的字符串,如SQL语句、各种服务器日志等,如果对这种长字符串进行分割处理和定义呢 ?
下面给个简单例子:
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 | <?php $name = '测试定义变量'; $str = <<<EOF <html> <head> <meta http-equiv="Content-Type" content="text/html; charset=utf8" /> <title>WEB终结者</title> </head> <body> String, $name! </body> </html> EOF; echo $str; echo "*******************************************"; $str_arr = @explode("\n", $str); $i = 1; foreach ($str_arr as $line) { echo "Line " . $i . " " . $line; echo "<br/>"; $i++; } ?> |
注意:
1.以<<<End开始标记开始,以End结束标记结束,结束标记必须顶头写,不能有缩进和空格,且在结束标记末尾要有分号 。
2.开始标记和开始标记相同,比如常用大写的EOT、EOD、EOF来表示,但是不只限于那几个,只要保证开始标记和结束标记不在正文中出现即可。
3.位于开始标记和结束标记之间的变量可以被正常解析,但是函数则不支持。在整个定义范围内,变量不需要用连接符.或,来拼接。
- 本文固定链接: https://www.web8899.com/php/529.html
- 转载请注明: 郑 国华 于 迈向卓越 发表