Проблема с заголовками HTTP при include в PHP
Проблема с заголовками HTTP может также
возникнуть при включениях файлов через
include
. Она проявится в том случае,
когда после закрывающий скобки ?>
поставлены пробелы или пустые строки,
вот так:
<?php
// some code
?>
В этом случае при инклуде нашего файла в другой файл оставленные пустые строки подействуют как вывод на экран:
<?php
include 'file.php'; // внутри вывод на экран
header('Content-Type: text/html');
?>
Для исправления проблемы лучше во всех
PHP файлах удалять последний закрывающий
?>
. Такой прием не ведет к ошибке
PHP и при этом страхует нас от случайного
добавления пустых строк. Давайте исправим
наш файл:
<?php
// some code
Исправьте ошибки, допущенные в следующем коде:
<?php
function func1() {
echo '1';
}
?>
<?php
function func2() {
echo '2';
}
?>
<?php
include 'file1.php';
include 'file2.php';
header('Content-Type: text/html');
?>
Исправьте ошибки, допущенные в следующем коде:
<?php
function func1() {
echo '1';
}
?>
<?php
function func2() {
echo '2';
}
?>
<?php
include 'file.php';
header('Content-Type: text/html');
?>