Problem mit HTTP-Headern bei Include in PHP
Das Problem mit HTTP-Headern kann auch
beim Einbinden von Dateien über
include auftreten. Es manifestiert sich dann,
wenn nach der schließenden Klammer ?>
Leerzeichen oder Leerzeilen gesetzt wurden,
so wie hier:
<?php
// some code
?>
In diesem Fall wirken die übrig gebliebenen Leerzeilen beim Inkludieren unserer Datei in eine andere Datei wie eine Bildschirmausgabe:
<?php
include 'file.php'; // внутри вывод на экран
header('Content-Type: text/html');
?>
Um das Problem zu beheben, ist es am besten, in allen
PHP-Dateien die letzte schließende
?> zu entfernen. Diese Vorgehensweise führt nicht zu einem PHP-Fehler
und schützt uns gleichzeitig vor dem versehentlichen
Hinzufügen von Leerzeilen. Lassen Sie uns unsere
Datei korrigieren:
<?php
// some code
Korrigieren Sie die Fehler, die im folgenden Code gemacht wurden:
<?php
function func1() {
echo '1';
}
?>
<?php
function func2() {
echo '2';
}
?>
<?php
include 'file1.php';
include 'file2.php';
header('Content-Type: text/html');
?>
Korrigieren Sie die Fehler, die im folgenden Code gemacht wurden:
<?php
function func1() {
echo '1';
}
?>
<?php
function func2() {
echo '2';
}
?>
<?php
include 'file.php';
header('Content-Type: text/html');
?>