Différence entre include et require

Résolu/Fermé
bombadilom Messages postés 232 Date d'inscription mercredi 4 septembre 2002 Statut Membre Dernière intervention 5 décembre 2012 - 1 août 2003 à 15:48
darklevel Messages postés 1 Date d'inscription vendredi 14 mai 2010 Statut Membre Dernière intervention 4 novembre 2012 - 4 nov. 2012 à 09:54
Encore une question stupide mais quelle est donc la différence entre ces deux fonctions include() et require () ?

Que votre route soit pavé de lumière . . . 

4 réponses

Bobinours Messages postés 2898 Date d'inscription jeudi 26 avril 2001 Statut Membre Dernière intervention 21 mars 2013 504
1 août 2003 à 15:59
http://php.net/include
http://php.net/require

Les includes sont conditionnels. Ils peuvent être placés dans une condition IF ou bien dans une boucle FOR, WHILE...

Les requires sont nécessaires et devrait donc se trouver toujours en début de script.

C'est généralement un require() que l'on devrait utiliser (pour tout ce qui est librairies ou paramètres globaux).

Bien souvent il est conseillé d'utiliser require_once() et include_once() à la place. Le différence avec leur homologue est que le fichier ne sera inclu qu'une seule fois quoi qu'il arrive.

http://php.net/include_once
http://php.net/require_once
159
Selon php.net :

"require() est identique à include() mise à part le fait que lorsqu'une erreur survient, il produit également une erreur fatale de type E_COMPILE_ERROR. En d'autres termes, il stoppera le script alors que include() n'émettra qu'une alerte de type E_WARNING, ce qui permet au script de continuer. "
135
bombadilom Messages postés 232 Date d'inscription mercredi 4 septembre 2002 Statut Membre Dernière intervention 5 décembre 2012 16
1 août 2003 à 16:17
merci pour toutes ces réponses, au moins j'ai maintenant la certitude de me coucher moins bête (pour ne pas dire autre chose) ce soir.

Que votre route soit pavé de lumière . . . 
7
Je vais p-e dire une bêtise (à vérifier), mais il me semble que Require() va utiliser la page appelée de façon transparente pour l'utilisateur, alors que include() va tout simplement inclure la page appelée à la page courante, ce qui aura pour effet de la rendre visible dans le code, au niveau utilisateur. (après traitement php bien entendu)

Reivax, qui essaye d'expliquer, et que la réponse intéresse...
-14
Bobinours Messages postés 2898 Date d'inscription jeudi 26 avril 2001 Statut Membre Dernière intervention 21 mars 2013 504
1 août 2003 à 16:06
C'est effectivement une connerie :oD
0
C'était pas con comme idée, je croyais la même chose mais en fait non ... Mais ça aurait été bien pratique en tout cas !
0
darklevel Messages postés 1 Date d'inscription vendredi 14 mai 2010 Statut Membre Dernière intervention 4 novembre 2012
4 nov. 2012 à 09:54
essaie de faire include() et require() à un fichier qui n'existe pas , tu va voir que avec include même si le fichier n'existe pas , ton script php va s'executer apres un warning , mais avec require ton script va être complètement bloqué , et le require_once() et le include_once() incluent le fichier une seul fois , c'est dans le cas si vous les mettez dans une condition , c'est mieux d'appeler le fichier d'include une seul fois ...
0