Forum |  HardWare.fr | News | Articles | PC | S'identifier | S'inscrire | Shop Recherche
2038 connectés 

  FORUM HardWare.fr
  Programmation
  PHP

  optimisation requete fgets

 


 Mot :   Pseudo :  
 
Bas de page
Auteur Sujet :

optimisation requete fgets

n°2221157
erwan83
Du Shift DEL tu te méfieras !
Posté le 01-03-2014 à 13:13:50  profilanswer
 

Bonjour.
j'ai de multiples requetes sur des fichiers à partir de PHP
voila le code que tout le monde connait en attaque ligne par ligne

Code :
  1. $handle = fgets($fichier, 2054.....


bon maintenant, si je sais que la longueur maxi de ma ligne ne pourra JAMAIS dépasser 400 + 3 CHR = 403:
quelle serait la différence entre:

Code :
  1. $handle = fgets($fichier, 403.....

et

Code :
  1. $handle = fgets($fichier, 2054.....

si je fais l'opération 1000 fois ?

mood
Publicité
Posté le 01-03-2014 à 13:13:50  profilanswer
 

n°2221159
erwan83
Du Shift DEL tu te méfieras !
Posté le 01-03-2014 à 13:29:11  profilanswer
 

Bon, pour ceux que ça intéresse:
J'ai fait 20 fois une boucle avec 100 000 ouvertures d'un fichier de 40 entrées.
Au départ chaque entrée était appelée par un fgets(fichier, suivi du nombre précis d'octets à récupérer:
moyenne de 14 à 15 ms
ensuite j'ai refait la même chose mais avec un fgets(fichier,2000
 
Résultat: idem


---------------
http://www.ypikay.com
n°2221161
czh
Posté le 01-03-2014 à 14:08:30  profilanswer
 

14-15 ms ça doit correspondre à la latence d'accès en lecture d'un HDD classique + quelques autres traitements.
 
Pour ce qui de préciser le nombre d'octets au fgets, le résultat n'est pas étonnement si l'on sait comment fonctionne la lecture d'un fichier : le fgets / fread s'arrête obligatoirement lorsqu'il trouve le byte EOF.
 
C'est même précisé dans la doc (http://www.php.net/manual/fr/function.fgets.php ) : "Lit jusqu'à la taille length - 1 octet depuis le pointeur de fichier handle, ou bien la fin du fichier, ou une nouvelle ligne (qui est inclue dans la valeur retournée), ou encore un EOF (celui qui arrive en premier). Si aucune longueur n'est fournie, la fonction lira le flux jusqu'à la fin de la ligne."

n°2221162
erwan83
Du Shift DEL tu te méfieras !
Posté le 01-03-2014 à 14:12:03  profilanswer
 

Arffffffffff


---------------
http://www.ypikay.com

Aller à :
Ajouter une réponse
  FORUM HardWare.fr
  Programmation
  PHP

  optimisation requete fgets

 

Sujets relatifs
Requête auto et envoie en mail[RESOLU] REQUETE SQL AVEC ID ET ORDER
SqL - requêteRequete SQL en VBA avec Excel
requete[RESOLU] syntaxe à utiliser pour une requête composé de variables
Mysql Requête pour supprimer doublons spéciauxRequête MYSQL avec Where un peu complexe
Optimisation lecture fichier texterequete mysql ou comparaison de tableaux php ?
Plus de sujets relatifs à : optimisation requete fgets


Copyright © 1997-2022 Hardware.fr SARL (Signaler un contenu illicite / Données personnelles) / Groupe LDLC / Shop HFR