Задать вопрос
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 Оценить 1 комментарий
Помогут разобраться в теме Все курсы
  • Skillfactory
    Профессия Fullstack веб-разработчик на JavaScript и PHP
    20 месяцев
    Далее
  • Хекслет
    PHP-разработчик
    10 месяцев
    Далее
  • Нетология
    Веб-разработчик с нуля: профессия с выбором специализации
    14 месяцев
    Далее
Решения вопроса 1
ThunderCat
@ThunderCat Куратор тега PHP
{PHP, MySql, HTML, JS, CSS} developer
1) судя по скринам - вы смотрите в инспекторе, он исправляет косяки типа отсутствия открывающих/закрывающих тегов и тп. Откройте исходный код страницы(ctrl+u), посмотрите что реально отдал скрипт браузеру.
2) возможно где то у вас вызывается рендер шаблона вложенно, или какая-то врапалка срабатывает, или теги падают и хром их дорисовывает, опять же - смотреть сурс странички.
3) Если код хедеров в при разном вызове отличается - сделать поиск по файлам проекта со строкой которая лишняя.
Ответ написан
Пригласить эксперта
Ваш ответ на вопрос

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

Похожие вопросы
FoodSoul Калининград
от 180 000 до 250 000 ₽
IT-Spirit Москва
от 230 000 до 320 000 ₽
от 200 000 до 290 000 ₽