coucou747
Messages postés12303Date d'inscriptionmardi 10 février 2004StatutMembreDernière intervention30 juillet 2012
-
27 janv. 2007 à 14:39
coockiesch
Messages postés2268Date d'inscriptionmercredi 27 novembre 2002StatutMembreDernière intervention13 septembre 2013
-
12 juin 2010 à 15:01
Cette discussion concerne un article du site. Pour la consulter dans son contexte d'origine, cliquez sur le lien ci-dessous.
coockiesch
Messages postés2268Date d'inscriptionmercredi 27 novembre 2002StatutMembreDernière intervention13 septembre 20134 12 juin 2010 à 15:01
Sachant que PHP est interprété et non compilé, c'est d'autant plus important...
Raf
parraccourci
Messages postés6Date d'inscriptionmercredi 31 août 2005StatutMembreDernière intervention12 juin 2010 12 juin 2010 à 14:37
@cedriclomb
Mettre un max de variable dans la même instruction ne fait pas gagner de mémoire. Le compilateur PHP finit quand même par créer et stocker en mémoire les résultats intermédiaires des instruction. La seule différence est que le code est moins lisible. C'est donc une pratique à éviter.
@autres
Je ne sais pas comment fonctionne le compilateur PHP mais tout bon compilateur remplace automatiquement les résultats de calculs statiques par leur résultat, ne provoquant au final aucune différence sur le fichier exécutable. Mais bon, il est clair que de mettre le directement le résultat ne mange pas de pain!
zogo17
Messages postés3Date d'inscriptionmercredi 15 août 2007StatutMembreDernière intervention15 août 2007 15 juil. 2009 à 02:21
Oupla, un petit commentaire tardif...
coucou747 tu pars du principe qu'une source est mal codée parce que on a écrit "m" à la place de 'm' ?
Faut arrêter de déconner, quand t'écris "m" la seul différence c'est que ca fait pensé à un language normal comme tout les languages ou un string est délimités par des ".
Après, si tu veux gagner 1 ms sur 1 milliard d'iteration et bien montrer que PHP c'est un language dont la synthaxe peut être moche alors tu le dit en parenthèse, tu dis pas que le script est pourri à cause de ça.
FhX
Messages postés2350Date d'inscriptionmercredi 13 octobre 2004StatutMembreDernière intervention18 avril 20153 29 janv. 2007 à 21:53
Pareil, autant faire :
// 86400 = 24*3600
.....code.... * 86400 ..... ;
Bon, si 1 itération, ca va rien changer.
Je pense qu'au bout d'un certain... et encore, je doute :o
Un calcul d'entier est le plus rapide, on risque de perdre 1ms sur 1 000 000 000 d'itération !
C'est Antho qui risque de se tirer les cheveux :p
coockiesch
Messages postés2268Date d'inscriptionmercredi 27 novembre 2002StatutMembreDernière intervention13 septembre 20134 29 janv. 2007 à 11:16
C'est pour ça que y'a les comments, :)
Enfin, je trouve, même si c personnel!
@++
R@f
coucou747
Messages postés12303Date d'inscriptionmardi 10 février 2004StatutMembreDernière intervention30 juillet 201244 29 janv. 2007 à 10:43
remplacer des calculs par des résultats, c'est pas exeptionnellement bon pour la compréhention du script...
cedriclomb
Messages postés275Date d'inscriptionsamedi 19 novembre 2005StatutMembreDernière intervention27 avril 20101 29 janv. 2007 à 00:33
Salut
On pourrais aussi liberer de la mémoire en fesant
if( ((($fin - $debut)%(24*3600))+($debut-$debutJournee)) > (24*3600) ) $nbJr++;
Ca fait 2 variables de gagner
coockiesch
Messages postés2268Date d'inscriptionmercredi 27 novembre 2002StatutMembreDernière intervention13 septembre 20134 27 janv. 2007 à 16:14
Salut!
Je te propose de remplacer 24 * 3600 par 86400, tu gagnes tes calculs à chaque appel de la fonction!
@++
R@f
coucou747
Messages postés12303Date d'inscriptionmardi 10 février 2004StatutMembreDernière intervention30 juillet 201244 27 janv. 2007 à 14:39
fonction déjà vue plein de fois ici, et mal codée : " => '
12 juin 2010 à 15:01
Raf
12 juin 2010 à 14:37
Mettre un max de variable dans la même instruction ne fait pas gagner de mémoire. Le compilateur PHP finit quand même par créer et stocker en mémoire les résultats intermédiaires des instruction. La seule différence est que le code est moins lisible. C'est donc une pratique à éviter.
@autres
Je ne sais pas comment fonctionne le compilateur PHP mais tout bon compilateur remplace automatiquement les résultats de calculs statiques par leur résultat, ne provoquant au final aucune différence sur le fichier exécutable. Mais bon, il est clair que de mettre le directement le résultat ne mange pas de pain!
15 juil. 2009 à 02:21
coucou747 tu pars du principe qu'une source est mal codée parce que on a écrit "m" à la place de 'm' ?
Faut arrêter de déconner, quand t'écris "m" la seul différence c'est que ca fait pensé à un language normal comme tout les languages ou un string est délimités par des ".
Après, si tu veux gagner 1 ms sur 1 milliard d'iteration et bien montrer que PHP c'est un language dont la synthaxe peut être moche alors tu le dit en parenthèse, tu dis pas que le script est pourri à cause de ça.
29 janv. 2007 à 21:53
// 86400 = 24*3600
.....code.... * 86400 ..... ;
Bon, si 1 itération, ca va rien changer.
Je pense qu'au bout d'un certain... et encore, je doute :o
Un calcul d'entier est le plus rapide, on risque de perdre 1ms sur 1 000 000 000 d'itération !
C'est Antho qui risque de se tirer les cheveux :p
29 janv. 2007 à 11:16
Enfin, je trouve, même si c personnel!
@++
R@f
29 janv. 2007 à 10:43
29 janv. 2007 à 00:33
On pourrais aussi liberer de la mémoire en fesant
if( ((($fin - $debut)%(24*3600))+($debut-$debutJournee)) > (24*3600) ) $nbJr++;
Ca fait 2 variables de gagner
27 janv. 2007 à 16:14
Je te propose de remplacer 24 * 3600 par 86400, tu gagnes tes calculs à chaque appel de la fonction!
@++
R@f
27 janv. 2007 à 14:39