打印输出和EOF无法正常工作

时间:2014-08-08 07:07:51

标签: php html

 print <<< HERE
 <p>
 <img src="dado_$roll.png"
      alt="$roll"
      height="100px"
      width="100px" />
</p>
HERE;

以上代码无效。我不知道为什么。请帮帮我。

2 个答案:

答案 0 :(得分:2)

在结束?>标识符后,需要有回车符或结束HERE;标记。请参阅代码中的注释。

<?php
print <<< HERE
 <p>
 <img src="dado_$roll.png"
      alt="$roll"
      height="100px"
      width="100px" />
</p>
HERE;
// make sure there's a carriage return here
// or add a closing ?> tag

你甚至可以拥有//,而不是HERE;

下的某些内容

否则,它将抛出:(,如果error reporting为ON)

  

解析错误:语法错误,第X行的...(路径/到/文件)意外结束文件



编辑:(测试输出)

$roll = "Roll_tag_text";

print <<< HERE
 <p>
 <img src="dado_$roll.png"
      alt="$roll"
      height="100px"
      width="100px" />
</p>

HERE;

HTML源:(如果这是所需的结果)

<p>
 <img src="dado_Roll_tag_text.png"
      alt="Roll_tag_text"
      height="100px"
      width="100px" />
</p>

答案 1 :(得分:0)

这不那么令人困惑并且做同样的事情:请记住,当使用"双引号时,PHP将允许其中的变量并使用它们的值。

<?php

 $string = '
   <p>
      <img src="dado_$roll.png"
        alt="$roll"
        height="100px"
        width="100px" />
   </p>
 ';

echo $string;