2015-06-09 4 views
1

Почему я получаю синтаксическую ошибку «неожиданный конец файла»? Ошибка появляется после строки закрытия??>, Но я не могу найти с ней ничего плохого.Операция Heredoc, показывающая ошибку синтаксиса

<?php 

require_once("classPage.php"); 

$page = new Page(); 

print $page->getTop(); 

print <<<EOF 

<div id="mainContent"> 

<p>This is where content would go, should there be any.</p> 

</div> <!-- end main content --> 

EOF; // no space at start of this line 

print $page->getBottom(); 

?> 
<---- Error is here. 
+0

В какой строке вы принимаете ошибку? (пожалуйста, также отметьте строку в вашем коде) – Epodax

+0

Ошибка находится за закрытием «?>». Я удалил интервал перед «EOF»; но ошибка все еще существует. – user3803747

ответ

2

У вас, вероятно, есть пробелы после терминатора в ваших примерах кода, например.

[space]EOD;[space] 

Также проверьте место до EOD;. т. е. вы должны поместить свое окончание heredoc в начале строки.

2

Ваш код должен быть примерно таким, обратите внимание, что комментарий в коде.

<?php 

    require_once("classPage.php"); 

    $page = new Page(); 

    print $page->getTop(); 

    print <<<EOF 

<div id="mainContent"> 

<p>This is where content would go, should there be any.</p> 

</div> <!-- end main content --> 

EOF; // no space at start of this line 

    print $page->getBottom(); 

?>