Sei un programmatore PHP e ti stai chiedendo quali sono le differenze tra i comandi include(), include_once(), require() e require_once(), per andare appunto ad includere un file esterno nella pagina.

Bene, questa guida è qui apposta per spiegarti le suddette differenze.

Anzitutto c’è da dire che tutti e quattro i comando svolgono un compito simile, ovvero includere un file esterno.

 

Partiamo col dire che include() e include_once() mostrano un warning e la pagina continua a caricare fino alla fine nel caso che il file da includere non viene trovato o non esiste, mentre require() e require_once() causano un fatal error e il caricamento della pagina si interrompe.

La differenza tra include() e include_once() è che se il codice del file da includere è già stato incluso non lo sarà di nuovo se usiamo include_once(), mentre tutte le volte che andremo ad usare include() il file sarà nuovamente incluso.

La differenza tra include() e require() è che se include() non è in grado di trovare il file nella posizione specificata mostrerà un warning, mentre require() mostrerà un errore fatale e bloccherà l’esecuzione di tutta la pagina.

La differenza tra require() e require_once() è che se il codice del file da includere è già stato incluso non lo sarà di nuovo se usiamo require_once(), mentre tutte le volte che andremo ad usare require() il file sarà nuovamente incluso.


Categorie: PHPProgrammazione

4 commenti

  • Livio · 10/01/2021 alle 15:54

    Utilizzo include per includere parti html in una pagina.
    Ad esempio l’intestazione che includo in ogni pagina.
    Il problema è che include inserisce il BOM (caratteri \xEF\xBB\xBF) e la visualizzazione non è quella che vorrei (in pratica l’intestazione si sposta verso il basso)

    C’è la possibilità di utilizzare include senza il bom?

    Io ho risolto con questo script, che va bene se il file da includere solo codice html perchè eventuale codice php, non viene elaborato:
    **

    che richiamo col comando :

      Marc · 11/06/2021 alle 23:47

      @Livio il problema è dovuto all’editor che stai usando. Ricordo che una decina di anni fa avevo avuto lo stesso problema e lo avevo risolto cambiando le impostazioni di salvataggio del file (forse usavo Notepad++).
      Oggi invece non ho più riscontrato questo problema utilizzando Atom come editor.

    steve · 07/03/2019 alle 21:11

    ottima spiegazione breve e concisa

      Marco Pakler · 13/03/2019 alle 15:03

      Grazie Steve!

    Lascia un commento

    Il tuo indirizzo email non sarà pubblicato. I campi obbligatori sono contrassegnati *