PHP : La différence entre include et require
Par Méthylbro le vendredi 25 septembre 2009, 08:00 - Développement - Lien permanent
Je dois régulièrement rappeler à tous les stagiaires que l'on me colle la différence entre les instructions include et require. Comme si la documentation PHP - qu'il s'agisse de l'officielle ou non - disponible sur internet n'était pas suffisante pour expliquer cela.
Pourtant il me parait normal qu'un jour dans sa vie, un développeur web/php se pose cette question :
Quelle différence y a-t-il entre include et require ?
include et require permettent toutes deux d'inclure et d'exécuter un fichier spécifié. Il s'agit de deux instructions très communes en PHP, qui permettent d'agréger des fichiers pour en faire un script à part entière.
Cependant même si ces instructions sont identiques d'un point de vue fonctionnel, elles n'adoptent pas tout à fait le même comportement. Lorsque la tentative d'inclusion du fichier passé en paramètre échoue, include et require n'adopterons pas tout à a fait une attitude identique.
La différence se situe au niveau du type d'erreur qui sera renvoyé en cas d'échec. include produira simplement une alerte de type E_WARNING tandis que lorsque require échoue elle provoque un E_ERROR suivi d'un arrêt total du script.
Si le fichier que vous souhaitez utiliser est essentiel pour votre script, qu'il ne peut plus rien effectuer sans avoir exécuter son contenu, préférez donc l'instruction require. Dans le cas contraire, si le fichier auquel vous souhaitez faire appel n'a aucun aspect fondamental dans votre script, utilisez include.
Consultez la documentation PHP pour en savoir plus :

Commentaires