• include va permettre de charger un fichier php. Si ce dernier n'existe pas, aucune erreur ne sera levée, seul un warning sera déclenché et la suite du code va s'exécuter normalement.
  • require va également permettre de charger un fichier php. En revanche, si le fichier n'existe pas une erreur sera levée.

require_once et include_once permettent de s'assurer que les fichiers ne sont importés qu'une seule fois.

Ex :

<?php
require_once('var.php');

Chemin absolu et chemin relatif

Dès que l'on commence a utiliser des fichiers php qui importent via require() ou include() d'autres fichiers php qui eux même importent des fichiers via require() ou include(), il n'est plus possible d'utiliser des chemins relatifs de façon intuitive.

Deux logiques sont possibles :

Chemin relatif avec "__DIR__" :

"__DIR__" vous  assure que votre point de départ est bien le script php depuis lequel vous faites l'import :

require_once(__DIR__.'/../standard/footer.php');

Chemin absolu avec "$_SERVER['DOCUMENT_ROOT']" :

"$_SERVER['DOCUMENT_ROOT']" vous assure que votre point de départ est bien la racine de votre site web :

require_once($_SERVER['DOCUMENT_ROOT'].'/../core/view/standard/head.php');