Abramov7
@Abramov7

PHP и подключение стороннего скрипта. Почему появляются пустые строчки?

К примеру в папке language лежит php-скрипт ru.php, содержимое которого просто до невозможности:
define('SITE_TITLE', 'Заголовок сайта');
Далее в index.php подключаем ru.php:
require_once '/language/ru.php';
И в html-тег прописываем нашу константу:
<title><?=SITE_TITLE?></title>
Заходим на сайт и смотрим, что в константа определилась и выводится «Заголовок сайта». Все вроде бы хорошо. Открываем исходный код (view-source) - все хорошо.
899902afa24d4fcb95b32e1fc624c863.jpg
Хорошо, открываем web-inspector:
185d42f6366342bb9f6e8bdc3681db36.jpg
Добавляются пустые строки, которые сдвигают содержимое страницы на небольшое кол-во пикселей. Если я их удаляю через web-inspector, то содержимое страницы поднимается на свое место. Второе, что меня удивило - это то, что содержимое ушло внутрь . Как и почему так вышло я не могу понять.

Это я привел простой пример к своему вопросу, который меня мучает долгое время. И главное как бы я не подгружал содержимое (require_once, file_get_contents и т.д.) и как бы его не выводил (echo, print, print_r - без разницы) с клиентской стороны появляются пустые строчки, которые отодвигают содержимое страницы. Если все прописываю руками голым HTML или объявляю константу в самом index.php, то такие пустые строчки не появляются. Пример:
<?
define('SITE_TITLE', 'Заголовок сайта');
?>
<!DOCTYPE html>
<html>
<head>
 <meta charset="UTF-8">
 <title><?=SITE_TITLE?></title>
 <!-- И так далее... -->


Как от сего избавиться? Заранее спасибо!
  • Вопрос задан
  • 2360 просмотров
Решения вопроса 1
Sanasol
@Sanasol Куратор тега PHP
нельзя просто так взять и загуглить ошибку
utf8 без bom
и не оставляем в конце и начале всех скриптов строк пустых.
Ответ написан
Пригласить эксперта
Ваш ответ на вопрос

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

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