Проблем с HTTP заглавия при include в PHP

Проблем с HTTP заглавията може също да възникне при включване на файлове чрез include. Тя ще се прояви в случая, когато след затварящата скоба ?> има поставени интервали или празни редове, ето така:

file.php<?php
  // някакъв код
?>

 

В този случай при включване на нашия файл в друг файл, оставените празни редове ще действат като изход към екрана:

index.php<?php
  include 'file.php'; // вътре има изход към екрана
  
  header('Content-Type: text/html');
?>

За поправване на проблема е добре във всички PHP файлове да се премахва последната затваряща ?>. Такъв подход не води до грешка в PHP и в същото време ни предпазва от случайно добавяне на празни редове. Нека поправим нашия файл:

file.php<?php
  // някакъв код
  
   
Задание 1

Поправете грешките, допуснати в следния код:

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

Поправете грешките, допуснати в следния код:

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