在 PHP 中使用 Heredoc 语法时遇到问题
<?php
$output = <<< END
<table style="display: table;" class="listview rowstyle-rowhighlight" id="resourcegrid">
<thead>
<tr>
<th width="70"></th>
<th style="-moz-user-select: none;" class="sortable fd-column-0"><a class="fdTableSortTrigger" href="#">Name</a></th>
<th style="-moz-user-select: none;" class="sortable fd-column-1"><a class="fdTableSortTrigger" href="#">Contributor</a></th>
<th style="-moz-user-select: none;" class="sortable fd-column-3"><a class="fdTableSortTrigger" href="#">Modified</a></th>
</tr>
</thead><tbody>
END;
echo $output;
当我运行它时报告:
Parse error: parse error on line 2
但我没有看到任何异常。
如果你对这篇内容有疑问,欢迎到本站社区发帖提问 参与讨论,获取更多帮助,或者扫码二维码加入 Web 技术交流群。
绑定邮箱获取回复消息
由于您还没有绑定你的真实邮箱,如果其他用户或者作者回复了您的评论,将不能在第一时间通知您!
发布评论
评论(3)
我认为问题是您应该使用
$output = << 而不是
$output = <<< END
(注意缺少空格)确保
END
之前或之后没有空格,即使一个无关的空格也可能会导致问题。查看您发布的代码,END
前后似乎有一个空格。来自 php 网站:
I believe the problem is that you should use
$output = <<<END
instead of$output = <<< END
(Note the lack of space)Make sure that there is no space before or after the
END
even a single extraneous space could cause problems. Looking at the code you posted, you seem to have a space before and after theEND
.From the php website:
它应该是
<<(没有空格)。
例子:
It should be
<<<END
(without space).Example:
在我的本地主机上使用以下内容不会输出任何错误。
就像其他人提到的那样,我只是摆脱了空间。
Using the following on my localhost outputs no errors.
Like others mentioned, I simply got rid of the space.