1

当我运行此代码时,我收到一条消息:

function print_footer(){
global $file;
echo <<<EOT
<center>
<a href="$file?op=vote"> Vote </a> |
<a href="$file?op=admin"> Admin </a> | 
<hr>
$copy; 2012, Shibbir Ahmed, All Rights Reserved.
</center>
</body>
</html> 
EOT;        
}   

错误信息:

解析错误:语法错误,D:\xampp server\xampp\htdocs\practice\function.php 中出现意外 $end ...

这段 PHP 代码有什么问题?

4

3 回答 3

3

您在此处发布的代码在结尾后有一堆空格EOT;。这在 PHP 语法中是不允许的:

需要注意的是,带有结束标识符的行不能包含其他字符,可能除了分号 (;)。这尤其意味着标识符可能不会缩进,并且分号之前或之后可能没有任何空格或制表符。

发生的情况是 PHP 看不到您的结束说明符,因此它会继续寻找一个,直到它意外到达文件末尾并引发错误。

解决方案是确保您拥有的行上没有空格EOT;,无论是之前还是之后。

于 2012-10-14T14:18:16.773 回答
0

如果您格式化代码的方式可以通过,看起来您在EOT;. HEREDOC 的结束标记必须是一行的绝对第一件事。

于 2012-10-14T14:17:36.533 回答
0

确保前面没有空格EOT;

于 2012-10-14T14:17:55.280 回答