HTTP fejlécek problémája include során PHP-ban
A HTTP fejlécekkel kapcsolatos probléma
akkor is előfordulhat, ha fájlokat
include-olunk be. Akkor nyilvánul meg,
amikor a záró ?> tag után
szóközök vagy üres sorok vannak,
így:
<?php
// valamilyen kód
?>
Ebben az esetben, amikor a fájlt beinclude-oljuk egy másik fájlba, a hátramaradt üres sorok képernyőre történő kimenetként fognak viselkedni:
<?php
include 'file.php'; // belül kimenet a képernyőre
header('Content-Type: text/html');
?>
A probléma megoldása érdekében célszerű minden
PHP fájlban eltávolítani az utolsó záró
?> tagot. Ez a módszer nem vezet
PHP hibához, és ugyanakkor megvéd minket a véletlen
üres sorok hozzáadásától. Javítsuk meg
a fájlt:
<?php
// valamilyen kód
Javítsa ki a következő kódban elkövetett hibákat:
<?php
function func1() {
echo '1';
}
?>
<?php
function func2() {
echo '2';
}
?>
<?php
include 'file1.php';
include 'file2.php';
header('Content-Type: text/html');
?>
Javítsa ki a következő kódban elkövetett hibákat:
<?php
function func1() {
echo '1';
}
?>
<?php
function func2() {
echo '2';
}
?>
<?php
include 'file.php';
header('Content-Type: text/html');
?>