PHP'de Include Sırasında HTTP Başlıkları ile İlgili Sorun
HTTP başlıkları ile ilgili sorun,
include ile dosya dahil etme sırasında da
ortaya çıkabilir. Bu sorun, kapanış etiketinden
?> sonra boşluklar veya boş satırlar
bırakıldığında kendini gösterir,
işte şu şekilde:
<?php
// bazı kodlar
?>
Bu durumda, dosyamız başka bir dosyaya include edildiğinde, bırakılan boş satırlar ekrana çıktı olarak etki eder:
<?php
include 'file.php'; // içinde ekrana çıktı var
header('Content-Type: text/html');
?>
Sorunu düzeltmek için, tüm PHP dosyalarında
son kapanış etiketini ?> silmek en iyisidir.
Bu yöntem PHP hatasına yol açmaz ve aynı zamanda
bizi yanlışlıkla boş satır eklenmesinden korur.
Dosyamızı düzeltelim:
<?php
// bazı kodlar
Aşağıdaki kodda yapılan hataları düzeltin:
<?php
function func1() {
echo '1';
}
?>
<?php
function func2() {
echo '2';
}
?>
<?php
include 'file1.php';
include 'file2.php';
header('Content-Type: text/html');
?>
Aşağıdaki kodda yapılan hataları düzeltin:
<?php
function func1() {
echo '1';
}
?>
<?php
function func2() {
echo '2';
}
?>
<?php
include 'file.php';
header('Content-Type: text/html');
?>