以下代码显示了一个解析错误:
Parse error: syntax error, unexpected $end, expecting T_VARIABLE
or T_END_HEREDOC
or T_DOLLAR_OPEN_CURLY_BRACES
or T_CURLY_OPEN in D:\xampp\htdocs\project1\conf.php
on line 10
这是我在conf.php文件中的代码
$chat_code =
<<<EOD
<script>alert('Hi')</script>
EOD;
答案 0 :(得分:3)
来自manual:
警告:请注意具有结束标识符的行非常重要 必须不包含其他字符,分号(;)除外。 这意味着 特别是标识符可能没有缩进,也可能没有 分号前后的任何空格或制表符。这也是 重要的是要意识到结束前的第一个角色 标识符必须是本地操作系统定义的换行符。 这在UNIX系统上是\ n,包括Mac OS X. 结束分隔符 还必须跟一个换行符。如果这个规则被破坏了 关闭标识符不是“干净”,它不会被视为结束 标识符,PHP将继续寻找一个。如果正确关闭 在当前文件结束之前找不到标识符,解析 错误将在最后一行产生。 Heredocs不能用于 初始化类属性。从PHP 5.3开始,此限制是有效的 仅适用于包含变量的heredoc。
因此,除了换行符号外,你的heredoc字符串结束分隔符应该没有前导符号和后续符号。