Το πρόβλημα με τις κεφαλίδες HTTP όταν γίνεται include σε PHP

Το πρόβλημα με τις κεφαλίδες HTTP μπορεί επίσης να προκύψει κατά την ενσωμάτωση αρχείων μέσω της include. Θα εκδηλωθεί στην περίπτωση όταν μετά τον τελικό tag ?> υπάρχουν κενά ή κενές γραμμές, έτσι:

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

 

Σε αυτήν την περίπτωση, όταν το αρχείο μας ενσωματωθεί σε ένα άλλο αρχείο, οι κενές γραμμές που αφέθηκαν θα δράσουν ως έξοδος στην οθόνη:

index.php<?php
  include 'file.php'; // μέσα υπάρχει έξοδος στην οθόνη
  
  header('Content-Type: text/html');
?>

Για να διορθωθεί το πρόβλημα, είναι καλύτερα σε όλα τα αρχεία PHP να διαγράφεται το τελευταίο κλείσιμο ?>. Αυτή η τεχνική δεν οδηγεί σε σφάλμα PHP και ταυτόχρονα μας προστατεύει από τυχαία προσθήκη κενών γραμμών. Ας διορθώσουμε το αρχείο μας:

file.php<?php
  // some code
  
   
Задание 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');
?>