HTTP antraščių problema įtraukiant failus naudojant PHP

HTTP antraščių problema gali atsirasti ir įtraukiant failus naudojant include. Ji pasireiškia tada, kai po uždarančios PHP žymos ?> yra palikti tarpai ar tuščios eilutės, kaip parodyta čia:

file.php<?php
  // some code
?>

 

Tokiu atveju, įtraukus mūsų failą į kitą failą, paliktos tuščios eilutės bus interpretuojamos kaip išvestis į ekraną:

index.php<?php
  include 'file.php'; // viduje yra išvestis į ekraną
  
  header('Content-Type: text/html');
?>

Norint išspręsti šią problemą, visuose PHP failuose geriau pašalinti paskutinę uždarančią žymą ?>. Šis metodas nesukelia PHP klaidų ir tuo pačiu apsaugo mus nuo atsitiktinio tuščų eilučių pridėjimo. Pataisykime mūsų failą:

file.php<?php
  // some code
  
   
Задание 1

Ištaisykite klaidas, padarytas šiame kode:

file1.php<?php
  function func1() {
    echo '1';
  }
?>

 
file1.php<?php
  function func2() {
    echo '2';
  }
?>

 
index.php<?php
  include 'file1.php';
  include 'file2.php';
  header('Content-Type: text/html');
?>

 
Задание 2

Ištaisykite klaidas, padarytas šiame kode:

file.php<?php
  function func1() {
    echo '1';
  }
?>
<?php
  function func2() {
    echo '2';
  }
?>
 
index.php<?php
  include 'file.php';
  header('Content-Type: text/html');
?>