par
Hywan » 17 avr. 2008, 00:10
Hey

,
include/require _once ne sont pas désastreux mais c'est vrai que ça vient vite lourd. Pourquoi ? Parce qu'en fait, il stocke les noms des fichiers en mémoire. Donc à chaque include/require _once, il va vérifier si le fichier n'a pas déjà été inclue ou pas. L'étape de vérification ajoute un temps supplémentaire à la charge du fichier en mémoire, c'est tout à fait normal. De là à dire que c'est désastreux ...
Pour d'énormes applications ou frameworks (tels Joomla! ou Zend Framework), oui, ça peut vraiment ralentir le système de ... quelques dixièmes de secondes (mais accumulées à tout le reste ...). Mais oui, fais un bench sur des include/require _once de 1000 fichiers, tu seras fixé

.
Néanmoins, tu peux utiliser ta propre fonction ou la méthode d'auto-chargement, comme l'a si bien suggéré Sékil

. Comment faire ta propre fonction maison ? Voir le statisme de PHP. Je te fais confiance Jules, t'es pas un débutant, tu sais lire le manuel

.
Après, tout dépend de tes besoins. Ici tu nous donnes l'exemple avec class_exists, donc je vais évidemment dans le sens de Sékil : auto-chargement.
Hey :),
include/require _once ne sont pas désastreux mais c'est vrai que ça vient vite lourd. Pourquoi ? Parce qu'en fait, il stocke les noms des fichiers en mémoire. Donc à chaque include/require _once, il va vérifier si le fichier n'a pas déjà été inclue ou pas. L'étape de vérification ajoute un temps supplémentaire à la charge du fichier en mémoire, c'est tout à fait normal. De là à dire que c'est désastreux ...
Pour d'énormes applications ou frameworks (tels Joomla! ou Zend Framework), oui, ça peut vraiment ralentir le système de ... quelques dixièmes de secondes (mais accumulées à tout le reste ...). Mais oui, fais un bench sur des include/require _once de 1000 fichiers, tu seras fixé ;-).
Néanmoins, tu peux utiliser ta propre fonction ou la méthode d'auto-chargement, comme l'a si bien suggéré Sékil ;-). Comment faire ta propre fonction maison ? Voir le statisme de PHP. Je te fais confiance Jules, t'es pas un débutant, tu sais lire le manuel ;-).
Après, tout dépend de tes besoins. Ici tu nous donnes l'exemple avec class_exists, donc je vais évidemment dans le sens de Sékil : auto-chargement.