ArtDenis
@ArtDenis
Разработчик сайтов и мобильных приложений

Почему мой файл шаблона выводится в html обертке?

Здравствуйте.

У меня есть класс - App.php, в нем функция:
public function render() {
        include 'templates/index.php';
}

Если мы прямо в этом классе вызовем функцию:
$index = new App();
$index->render();

То страница отображается нормально!

Но если я пишу в файле main.php:
require_once __DIR__ . '/classes/App.php';

$index = new App();
$index->render();

То страница выводится теперь уже в обертке:
19839f8f82cc49a4828c1029fd5ef9af.png
То есть:
<html>
<head></head>
<body>
<!-- здесь видимо браузер сам срезает html и head но содержимое тэга head находится уже в body -->
<title>Название</title>
....
</body>
</html>

Повторюсь, при вызове из файла класса, все отображается корректно.

Буду рад любой помощи, скорее всего решение простое, и что-то я сам туплю :)
  • Вопрос задан
  • 139 просмотров
Решения вопроса 1
ThunderCat
@ThunderCat Куратор тега PHP
{PHP, MySql, HTML, JS, CSS} developer
1) судя по скринам - вы смотрите в инспекторе, он исправляет косяки типа отсутствия открывающих/закрывающих тегов и тп. Откройте исходный код страницы(ctrl+u), посмотрите что реально отдал скрипт браузеру.
2) возможно где то у вас вызывается рендер шаблона вложенно, или какая-то врапалка срабатывает, или теги падают и хром их дорисовывает, опять же - смотреть сурс странички.
3) Если код хедеров в при разном вызове отличается - сделать поиск по файлам проекта со строкой которая лишняя.
Ответ написан
Пригласить эксперта
Ваш ответ на вопрос

Войдите, чтобы написать ответ

Похожие вопросы