Il y a eu un petit débat sur la vitesse de Fnmatch sur Pathinfo ici: Comment Pour vérifier si le fichier est PHP?
Je n'étais pas totalement convaincu alors décidé de comparer les deux fonctions. P>
Utiliser des chemins dynamiques et statiques a montré que Pathinfo était plus rapide. P>
est ma logique de référence et ma conclusion valide? P>
edit fort>: Utilisation de Mac PHP de CMD P>
PHP 5.3.0 (CLI) (Construit: 20 juil. 2009 13:56:33) Copyright (c) 1997-2009 le PHP Group Zend Engine V2.3.0, Copyright (c) 1998-2009 ZEND Technologies p>
Chemin dynamique Pathinfo 3.2973630428314 Fnmatch 3.4520659446716 x1.05 P>
Piste de chemin statique Pathinfo 0.86487698554993 Fnmatch 1.0420439243317 x1.2 P>
Mac Xampp php de cmd p>
PHP 5.3.1 (CLI) (construit: 27 février 2010 12:41:51) Copyright (c) 1997-2009 le PHP Group Zend Engine V2.3.0, Copyright (c) 1998-2009 ZEND Technologies P>
Chemin dynamique PATHINFO 3.63922715187 Fnmatch 4.99041700363 x1.37 P>
Chemin de chemin statique PATHINFO 1.03110480309 Fnmatch 2.38929820061 x2.32 P> blockQuote>
I Inclure un échantillon des résultats qui se trouvent en quelques secondes pour 100 000 itérations sur ma machine: p>
xxx pré> code: p>
xxx PRE> P>
5 Réponses :
Mes résultats sont en face de la vôtre: version p>
Utiliser le vôtre avec donne p> ces quatre p> Lors de la course comme ceci p> et profilé sur ma machine à partir de Zend Studio donne p> Je trouve quelque peu gênant que non 4 est le plus rapide, mais c'est ce qu'il dit. Et avec 0,00000n secondes par appel, il n'y a rien à déranger de toute façon. P> p>
Utilisation du même code d'analyse comparative
dynamic path pathinfo 2.6542711257935 fnmatch 1.9943950176239 x0.75 static path pathinfo 1.1711349487305 fnmatch 0.54186105728149 x0.46 PHP Version 5.3.1 Build Date Nov 20 2009 17:20:57 Compiler MSVC6 (Visual C++ 6.0) Architecture x86 Thread Safety enabled Zend Memory Manager enabled Zend Multibyte Support disabled
Je vais jeter mes résultats ici: Mais gardez à l'esprit mon commentaire original sur la question que vous avez liée à: p> En ce qui concerne la vitesse, fnmatch va sortir
Effectuer PathInfo 2: 1 quand utilisé pour
Cet objectif. em> p>
blockQuote> spécifique à la ramification sur une extension particulière. p> p>
J'ai suscité toutes les réponses mais je répondra à ma propre question. P>
Ma logique de référence et ma conclusion est valide et toutes les réponses de réponse sont valides. P>
J'ai trouvé la raison pour laquelle, qui a soulevé une autre question, mais aussi faire de cette post partir dans une tangente et la rendant encore plus longtemps que je vais ouvrir une autre question. Je vais mettre le nouveau lien ici quand je l'ai fait. P>
Merci d'avoir benchmarking pour moi! p>
Edit: Voici la partie 2 Question: (pathinfo vs fnmatch Partie 2) Benchmark de la vitesse inversée sur Windows et Mac P>
devrait être un cw car ce n'est pas une vraie question, je suppose
C'est une vraie question! Pourquoi les autres atteignent-ils une conclusion différente?
Combien de fois avez-vous exécuté le test? Sur les machines multitâches, certaines tâches peuvent être retardées, ralentissement des portions de code qui peuvent normalement être plus rapides.
Je l'ai couru plusieurs fois et j'ai reçu les mêmes résultats ... J'ai mis à jour mon message avec les résultats de la ligne de commande.