Sobes.tech
Junior

Jaký je rozdíl mezi funkcemi require a include v PHP?

sobes.tech AI

Odpověď od AI

Rozdíly v zacházení s chybami při připojení souboru.

  • require: Při chybě (soubor nenalezen nebo nedostupný) generuje fatální chybu (E_COMPILE_ERROR), skript se ukončí.
  • include: Při chybě generuje varování (E_WARNING), ale skript pokračuje v běhu.
Funkce Typ chyby při selhání Pokračování v běhu
require E_COMPILE_ERROR Ne
include E_WARNING Ano

Použití require je vhodnější pro kritické soubory (například konfigurace, knihovny), bez nichž je práce skriptu bezvýznamná. include je vhodné pro volitelné soubory (například šablony, widgety).

Existují také verze require_once a include_once, které kontrolují, zda byl soubor již připojen, a připojí jej pouze jednou.

<?php

// Příklad použití require
// Pokud soubor non_existent_critical_file.php neexistuje, skript se zastaví.
// require 'non_existent_critical_file.php';

// Příklad použití include
// Pokud soubor non_existent_optional_file.php neexistuje, bude varování,
// ale skript bude pokračovat.
// include 'non_existent_optional_file.php';

?>