Probleem met HTTP-headers bij include in PHP

Het probleem met HTTP-headers kan ook voorkomen bij het includeren van bestanden via include. Het manifesteert zich in het geval wanneer er na de afsluitende tag ?> spaties of lege regels zijn toegevoegd, zoals hier:

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

 

In dit geval werken de achtergelaten lege regels, wanneer ons bestand wordt geïncludeerd in een ander bestand, als uitvoer naar het scherm:

index.php<?php
  include 'file.php'; // binnenin zit uitvoer naar het scherm
  
  header('Content-Type: text/html');
?>

Om het probleem op te lossen, is het beter om in alle PHP-bestanden de laatste afsluitende ?> te verwijderen. Deze techniek leidt niet tot een fout in PHP en beschermt ons tegelijkertijd tegen het per ongeluk toevoegen van lege regels. Laten we ons bestand corrigeren:

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

Verbeter de fouten die zijn gemaakt in de volgende code:

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

Verbeter de fouten die zijn gemaakt in de volgende code:

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