Zend FR

Consultez la FAQ sur le ZF avant de poster une question

Vous n'êtes pas identifié.

#1 25-08-2008 22:37:48

3uclide
Membre
Date d'inscription: 09-08-2008
Messages: 194

Include, Include_Once, Require, Require_Once ou Zend_Loader

Bonjour, j'étais en train de me demander dans quel contexte faillait-il les utiliser, sachant qu'il y a une différence de temps d'exécution aussi infime soit-elle. J'attends vos conseils wink

Hors ligne

 

#2 26-08-2008 09:25:01

sekaijin
Membre
Date d'inscription: 17-08-2007
Messages: 1137

Re: Include, Include_Once, Require, Require_Once ou Zend_Loader

Include et include_once est à utiliser pour inclure un bout de php (ou html) sans générer d'erreur en cas d'absence
C'est donc rarement le cas. car ça signifie que le contenu du dit fichier n'est pas important.
ou alors il faut tester l'existence du fichier avant.

require et require_once lui génère une erreur en cas d'absence du fichier. il est donc beaucoup plus adapté à la "modularisation" du code. pour éviter que les message s'affiche il est possible de traper l'erreur et d'agir en conséquence.

Zend_Loader sert lui à charger une classe il agit comme un require_once mais en plus il vérifie l'existence de la classe dans le fichier.

les trois n'ont donc pas du tout le même usage.

quant au performance c'est tellement pinots que c'est pas là dessus qu'il te faut chercher à optimiser.
A+JYT

Hors ligne

 

#3 26-08-2008 09:47:27

mikaelkael
Administrateur
Lieu: Donges
Date d'inscription: 18-06-2007
Messages: 1176
Site web

Re: Include, Include_Once, Require, Require_Once ou Zend_Loader

Hello,

Malheureusement, tout le monde n'a pas le droit à Linux. Si comme moi, tu dois utiliser Windows, tu éviteras tant que possible d'utiliser Zend_Loader.

A+


Less code = less bugs
Contributeur ZF - ZCE - ZFCE - Doc ZF (CHM & PDF) - Vice-trésorier AFUP 2011
Ubuntu 11.04 - ZendServer

Hors ligne

 

#4 26-08-2008 17:19:31

brunofriedmann
Nouveau membre
Date d'inscription: 16-08-2008
Messages: 5

Re: Include, Include_Once, Require, Require_Once ou Zend_Loader

mikaelkael ... je suis pas d'accord Zend_Loader tu utiliseras, windows tu vireras :-)

Sans rire c'est quoi le truc impératif qui fait planter Zend_Loader sous windows ...

Si tu travailles avec le ZF, je ne crois pas possible de s'en tirer correctement sans un opcache code ( APC et autres )

Hors ligne

 

#5 27-08-2008 09:15:14

sekaijin
Membre
Date d'inscription: 17-08-2007
Messages: 1137

Re: Include, Include_Once, Require, Require_Once ou Zend_Loader

mikaelkael a écrit:

Hello,

Malheureusement, tout le monde n'a pas le droit à Linux. Si comme moi, tu dois utiliser Windows, tu éviteras tant que possible d'utiliser Zend_Loader.

A+

pourqoi je suis sous windows linux et MacOS et jutilise à font Zend_Loader sans aucun problèmes

A+JYT

Hors ligne

 

#6 27-08-2008 09:43:37

elkolonel
Administrateur
Lieu: Grasse
Date d'inscription: 18-12-2007
Messages: 299
Site web

Re: Include, Include_Once, Require, Require_Once ou Zend_Loader

mikaelkael a écrit:

Hello,

Malheureusement, tout le monde n'a pas le droit à Linux. Si comme moi, tu dois utiliser Windows, tu éviteras tant que possible d'utiliser Zend_Loader.

A+

Moi aussi, je suis sous Windows et OS X et je n'ai aucun problème avec le Zend_Loader, quel est exactement ton problème ?

@+

Hors ligne

 

#7 27-08-2008 10:11:09

mikaelkael
Administrateur
Lieu: Donges
Date d'inscription: 18-06-2007
Messages: 1176
Site web

Re: Include, Include_Once, Require, Require_Once ou Zend_Loader

Hello,

Je vois que personne n'a profilé avec ZendStudio sous Windows smile. C'est catastrophique ! Tout le camembert est pris par Zend_Loader.
Il est bien évident que je parle d'une base de temps de 150ms. Si vous comparez, sur une génération de page de 1s ou + avec un Zend_Db ou un Zend_Date en action, Zend_Loader passe inaperçu.

Je ne peux pas virer Windows (ou peut être en quittant ma boîte smile).

A+


Less code = less bugs
Contributeur ZF - ZCE - ZFCE - Doc ZF (CHM & PDF) - Vice-trésorier AFUP 2011
Ubuntu 11.04 - ZendServer

Hors ligne

 

#8 27-08-2008 11:20:43

elkolonel
Administrateur
Lieu: Grasse
Date d'inscription: 18-12-2007
Messages: 299
Site web

Re: Include, Include_Once, Require, Require_Once ou Zend_Loader

mikaelkael a écrit:

Hello,

Je vois que personne n'a profilé avec ZendStudio sous Windows smile. C'est catastrophique ! Tout le camembert est pris par Zend_Loader.
Il est bien évident que je parle d'une base de temps de 150ms. Si vous comparez, sur une génération de page de 1s ou + avec un Zend_Db ou un Zend_Date en action, Zend_Loader passe inaperçu.

Je ne peux pas virer Windows (ou peut être en quittant ma boîte smile).

A+

Ah oui, je crois avoir déjà vu un post sur ce sujet dans le forum... Par ailleurs, ce serait pas mal d'avoir un petit tuto sur le 'profiling' avec Zend Studio. Tu en connais un  ?

++

Hors ligne

 

#9 27-08-2008 18:03:20

sekaijin
Membre
Date d'inscription: 17-08-2007
Messages: 1137

Re: Include, Include_Once, Require, Require_Once ou Zend_Loader

ben ça me parait évident
vérifier que la classe n'existe pas déjà
vérifier que le chemin existe
vérifier que c'est un fichier php
lire le fichier
vérifier que la classe existe

ça rends plus de temps que lire le fichier
si tu écrit toi même le code à chaque fois pour faire ça tu obtiendras là aussi des ms en plus que de simplement lire le fichier

alors tu as le choix soit tu lit sans rien vérifier avec un once c'est mieux et tu continu ton script se si ça plante tu n'as aucun moyen de rattrapage et ton appli est dans les choux

soit tu fais des vérif (à priori ou à postériori) et là tu peux gérer les problème et éviter le plantus généralisé

c'est bien ce que je disais ça n'as pas du tout le même usage.

si tu fais l'impasse sur Zend_Loader et que tu dois faire une appli robuste alors il te faudra coder un équivalent et tu grignotera des ms

A+JYT

Hors ligne

 

#10 27-08-2008 18:25:04

mikaelkael
Administrateur
Lieu: Donges
Date d'inscription: 18-06-2007
Messages: 1176
Site web

Re: Include, Include_Once, Require, Require_Once ou Zend_Loader

Hello,

Mon message ne dit pas que je n'utilise pas Zend_Loader mais que j'évite de l'utiliser. Mes fabriques utilisent Zend_Loader. Mais j'ai un paquet de require_once en début de bootstrap (Zend_Controller_Action, Zend_Layout, Zend_Db, Zend_Controller_Front...) qui à mon sens n'ont pas besoin d'être charger par Zend_Loader.

A+


Less code = less bugs
Contributeur ZF - ZCE - ZFCE - Doc ZF (CHM & PDF) - Vice-trésorier AFUP 2011
Ubuntu 11.04 - ZendServer

Hors ligne

 

#11 27-08-2008 18:52:48

Jean-Marc Rigade
Membre
Lieu: Rennes
Date d'inscription: 25-09-2007
Messages: 314

Re: Include, Include_Once, Require, Require_Once ou Zend_Loader

sekaijin a écrit:

si tu fais l'impasse sur Zend_Loader et que tu dois faire une appli robuste alors il te faudra coder un équivalent et tu grignotera des ms

A+JYT

Je dois être à coté de la plaque vu que je n'utilise QUE des require_once, que ce soit pour l'utilisation des classes du Zend Framework ou les miennes, et je fais ça dans des grosses appli en production et je n'ai jamais aucun plantage ni problème. En tout cas pas à cause de ça.
Et je ne code rien pour remplacer un loader.
Je sais de quelle classes je vais avoir besoin, je fais mes require_once et basta.
S'il m'arrive d'en oublier, les tests sont là pour ça et ce genre de problème ne va jamais jusqu'en production.

Dernière modification par Jean-Marc Rigade (27-08-2008 18:55:46)

Hors ligne

 

#12 14-11-2008 15:45:50

ALkyD
Membre
Lieu: Limoges
Date d'inscription: 11-07-2007
Messages: 69
Site web

Re: Include, Include_Once, Require, Require_Once ou Zend_Loader

Hello

mikaelkael : J'utilise Windows et Zend Studio, et je constate aussi que Zend_Loader prend une bonne partie du camember lorsque je fais un profiling... Alors je me pose quand même des questions quant à l'optimisation de cette classe, et même de mon site MVC, qui met quand même un peu de temps à se charger même en local...

Faut-il l'utiliser pour charger dynamiquement les classes ou bien mettre des require lorsqu'on peut ?

Hors ligne

 

#13 14-11-2008 18:02:48

mikaelkael
Administrateur
Lieu: Donges
Date d'inscription: 18-06-2007
Messages: 1176
Site web

Re: Include, Include_Once, Require, Require_Once ou Zend_Loader

Hello,

Il y a un message sur ce forum qui explique les différences "Include, Include_Once, Require, Require_Once ou Zend_Loader" (de Gauthier je crois).

En tout cas, la version 1.7.0 du ZF sort lundi prochain. Sa documentation a été mise à jour avec notamment un chapitre "Performance" (chargement des classes, localisation, rendu des vues).

Je peux mettre en ligne la nouvelle version de la doc pour ceux que ça intéresse avant la semaine prochaine.

A+


Less code = less bugs
Contributeur ZF - ZCE - ZFCE - Doc ZF (CHM & PDF) - Vice-trésorier AFUP 2011
Ubuntu 11.04 - ZendServer

Hors ligne

 

#14 14-11-2008 19:30:24

mikaelkael
Administrateur
Lieu: Donges
Date d'inscription: 18-06-2007
Messages: 1176
Site web

Re: Include, Include_Once, Require, Require_Once ou Zend_Loader

Hello,

Pour ceux que cela intéresse, la doc de la 1.7 : http://mikaelkael.fr/doczf/ et le chapitre sur les performances http://mikaelkael.fr/doczf/performance.html .

C'est un peu brut de décoffrage.

A+

Dernière modification par mikaelkael (14-11-2008 19:30:37)


Less code = less bugs
Contributeur ZF - ZCE - ZFCE - Doc ZF (CHM & PDF) - Vice-trésorier AFUP 2011
Ubuntu 11.04 - ZendServer

Hors ligne

 

Pied de page des forums

Propulsé par PunBB
© Copyright 2002–2005 Rickard Andersson
Traduction par punbb.fr

Graphisme réalisé par l'agence Rodolphe Eveilleau
Développement par Kitpages