Différence entre require et include en PHP

La différence entre require et include est la suivante : require arrêtera l’exécution à la ligne dans laquelle l’erreur est produit.
 
 
include ne s’exécute pas et continuera à s’exécuter quelles que soient les erreurs. Donc, disons que nous utilisons require et qu’il y avait une erreur dans le code. require arrêtera l’exécution et vous ne verrez pas les autres lignes de code. Vous obtiendrez également une erreur indiquant qu’il n’existe aucun fichier ou répertoire de ce type. Pourtant, avec include, supposons que vous ayez l’erreur. include continuera à exécuter le reste du code. Voici un petit exemple.
 
Imaginez que ceci est une faut d’orthographe pour notre fichier inclus. Nous essayons d’inclure test.php

<?php include ('pest.php'); ?>
<!-- Rappelez-vous, nous essayons d'inclure test.php, pas pest.php -->
<!-- include exécutera les lignes ci-dessous, méme si le fichier contient une faut d'orthographe. --> 
<?php print($c); ?>

À présent. Cela peut poser un problème car nous référons à la variable $c qu’elle était définie dans le fichier test.php. Utiliser include le fera et une fois que PHP aura exécuté le fichier, vous obtiendrez une erreur d’index non définie car vous essayez de référencer une variable qui n’existe pas alors que vous savez que la variable existe dans le fichier test.php.
 
 
Essayons maintenant require:

<?php require('pest.php'); ?>
<!-- Encore une fois, rappelez-vous que nous appelons à pest.php, pas à test.php. En fait, vous ne verrez même pas ce message -->
<!-- Ce commentaire et les autres lignes ci-dessous ne seront pas affichés à l'écran. -->
<?php print($c); ?>

Donc require n’exécutera aucune ligne après l’erreur. C’est une bonne chose, car l’erreur que nous connaissons dans la partie include, nous ne verrons pas l’erreur qui disent que la variable n’est pas été définie car l’exécution s’arrête là où les fautes commencent. Une fois que nous aurons corrigé les fautes d’otographe, le fichier inclus sera inclus, require nous permettant ainsi de référencer correctement la variable $c.
 

Conclusion

require est identique à include, sauf en cas d’échec, une erreur fatale de type E_COMPILE_ERROR sera également générée. En d’autres termes, le script sera arrêté alors que include émettra un avertissement (E_WARNING) permettant au script de continuer.
Difference entre require et require_once en PHP

Laisser un commentaire

Votre adresse e-mail ne sera pas publiée. Les champs obligatoires sont indiqués avec *