cs_Anthomicro
Messages postés9433Date d'inscriptionmardi 9 octobre 2001StatutMembreDernière intervention13 avril 20078 22 févr. 2005 à 19:00
tu m'étonnes....
Bon si j'ai le temps je rajouterai ça à mon article, mais bon flemme aussi ^^
fuckya
Messages postés125Date d'inscriptionmercredi 31 mars 2004StatutMembreDernière intervention 8 juin 2006 22 févr. 2005 à 18:52
flemme ^^
cs_Anthomicro
Messages postés9433Date d'inscriptionmardi 9 octobre 2001StatutMembreDernière intervention13 avril 20078 22 févr. 2005 à 18:48
lol, bah fais-le à la main alors ^^
fuckya
Messages postés125Date d'inscriptionmercredi 31 mars 2004StatutMembreDernière intervention 8 juin 2006 22 févr. 2005 à 18:36
J'ai essayé de faire le test avec strtr et les plusieurs str_replace et j'ai pas réussi à l'écrire correctement dans la fonction xD
cs_Kirua
Messages postés3006Date d'inscriptiondimanche 14 avril 2002StatutMembreDernière intervention31 décembre 2008 22 févr. 2005 à 16:45
Je pense qu'il y a de tte façon une imprécision liée à la mesure du temps bien supérieure aux temps mesurés, mais soit.
Sinon, dérouler une boucle est tjs plus rapide qu'exécuter une boucle; y a qu'à voir en C/C++ à quel point ça joue dans les optimisations!
cs_Anthomicro
Messages postés9433Date d'inscriptionmardi 9 octobre 2001StatutMembreDernière intervention13 avril 20078 22 févr. 2005 à 02:11
Pour strtr elle est plus lente effectivement, mais elle est plus lente comparée à un str_replace avec des tableaux passés en paramètres, pour ce qui est de plusieurs str_replaces faudrait faire le test ;-)
zoukozouko
Messages postés148Date d'inscriptiondimanche 25 janvier 2004StatutMembreDernière intervention21 janvier 2009 22 févr. 2005 à 01:21
par la fonction strtr :
$tableau=array('<?php'=>'','<?'=>'','?>'=>'');
$this->code=strtr($code,$tableau);
"
strtr est une fonction qui permet surtout de rendre le code plus claire et moins touffu, mais au final, au niveau du temps d'exécution, la décomposition de la fonction est forcément plus rapide:
for ($i=0; $i<10; $i++) {}
est aussi rapide que
$i++;
$i++;
$i++;
$i++;
$i++;
$i++;
$i++;
$i++;
$i++;
$i++;
mais c'est plus joli.
Les fonctions distribuées pas la lib php nous permet d'éviter de les réécrire, on peut considérer qu'elle sont toutes optimisées.
mais il est plus rapide de mettre le corps de la fonction (si tu le connais) plutot que l'appel a la focntion:
function f(......)
{ ......corps de la fonction....}
....code....
f(........);
....code......
est plus lent que
.....code........
........corps de la fonction........
.........code.........
puisqu'il oblige l'interpreteur php à faire un appel a la fonction.
dans les langages comme C ou JAVA par contre, c'est la meme chose, puisque le programme est compilé, et en assembleur ca dont la meme chose.
Sinon, meme si c'est plus lent, j'utiliserai putot ta methode plus jolie et compacte, sachant que ca ne me derange pas (personnellement) que les utilisateurs de mes sites passent 0.000001 seconde de plus a charger ma page ....(les pauvres) lol
fuckya
Messages postés125Date d'inscriptionmercredi 31 mars 2004StatutMembreDernière intervention 8 juin 2006 21 févr. 2005 à 10:15
Ouais il faut parser de facon a ce que ca marche :s
Avec un textarea et un addslashes ca devrait marcher non?
malalam
Messages postés10839Date d'inscriptionlundi 24 février 2003StatutMembreDernière intervention 2 mars 201025 21 févr. 2005 à 10:12
Dis donc, ca demande de l'investissement pour utiliser ton bench avec certaines fonctions ;-)
fuckya
Messages postés125Date d'inscriptionmercredi 31 mars 2004StatutMembreDernière intervention 8 juin 2006 20 févr. 2005 à 14:48
bon tant pis, je me débrouillerais ^^
cs_Kirua
Messages postés3006Date d'inscriptiondimanche 14 avril 2002StatutMembreDernière intervention31 décembre 2008 20 févr. 2005 à 14:45
nah, je vais plus sur msn, désolé
fuckya
Messages postés125Date d'inscriptionmercredi 31 mars 2004StatutMembreDernière intervention 8 juin 2006 20 févr. 2005 à 14:30
T'as pas msn plutot ? ^^
cs_Kirua
Messages postés3006Date d'inscriptiondimanche 14 avril 2002StatutMembreDernière intervention31 décembre 2008 20 févr. 2005 à 14:15
kirua at coder-studio point com
à ton service ;)
fuckya
Messages postés125Date d'inscriptionmercredi 31 mars 2004StatutMembreDernière intervention 8 juin 2006 20 févr. 2005 à 13:58
Ouf, faudra que tu m'explique ta source kirua j'comprends pas trop ^^
cs_Anthomicro
Messages postés9433Date d'inscriptionmardi 9 octobre 2001StatutMembreDernière intervention13 avril 20078 20 févr. 2005 à 13:53
lol
fuckya
Messages postés125Date d'inscriptionmercredi 31 mars 2004StatutMembreDernière intervention 8 juin 2006 20 févr. 2005 à 13:40
Merci je vais y faire un tour :)
cs_Kirua
Messages postés3006Date d'inscriptiondimanche 14 avril 2002StatutMembreDernière intervention31 décembre 2008 20 févr. 2005 à 12:47
j'ai posté une classe qui fait des graphiques si tu veux:
fuckya
Messages postés125Date d'inscriptionmercredi 31 mars 2004StatutMembreDernière intervention 8 juin 2006 20 févr. 2005 à 12:43
Tiens faudrait que j'intègre un truc qui fait des graphiques avec possibilité de sauvegarde du graph...:D
cs_Anthomicro
Messages postés9433Date d'inscriptionmardi 9 octobre 2001StatutMembreDernière intervention13 avril 20078 20 févr. 2005 à 10:59
Je reçois ça par mail (merci pour l'anonymat, ça m'aide vachement à avancer) :
"Dans ce bout, je ne suis pas sûr qu'avec la virgule c'est une concaténation...
d'après ce que j'avais vu sur PHPCS, c'est seulement que les paramètres de fonctions qui sont séparés par des virgules, donc c'est comme si c'était divers echo de suite."
Je suis d'accord en partie sur ce point, seulement tu mets bien plusieurs paramètres à la suite mais collés (je me comprends), ce n'est pas comme les arguments d'une fonction au sens propre (après peut-être qu'en interne si).
Bref je garde ce terme ;-)
a ++
fuckya
Messages postés125Date d'inscriptionmercredi 31 mars 2004StatutMembreDernière intervention 8 juin 2006 20 févr. 2005 à 09:48
Pas mal l'article ^^
cs_Anthomicro
Messages postés9433Date d'inscriptionmardi 9 octobre 2001StatutMembreDernière intervention13 avril 20078 19 févr. 2005 à 22:18
merci ;-)
cs_Kirua
Messages postés3006Date d'inscriptiondimanche 14 avril 2002StatutMembreDernière intervention31 décembre 2008 19 févr. 2005 à 22:12
Viens de le lire, c'est un bon article! Il est dors et déjà dans mes bookmarks, et je vous encourage à aller le lire (c'est vite fait).
cs_Anthomicro
Messages postés9433Date d'inscriptionmardi 9 octobre 2001StatutMembreDernière intervention13 avril 20078 19 févr. 2005 à 20:31
Bon je viens de concevoir un article sur l'optimisation de PHP et quelques tests :
23 févr. 2005 à 06:23
a +
23 févr. 2005 à 03:31
plus simple lorsque le code est complexe (menfin, je crois)
http://www.phpcs.com/code.aspx?id=29497
Ha non, pas de la pub !!!! ;)
22 févr. 2005 à 19:00
Bon si j'ai le temps je rajouterai ça à mon article, mais bon flemme aussi ^^
22 févr. 2005 à 18:52
22 févr. 2005 à 18:48
22 févr. 2005 à 18:36
22 févr. 2005 à 16:45
Sinon, dérouler une boucle est tjs plus rapide qu'exécuter une boucle; y a qu'à voir en C/C++ à quel point ça joue dans les optimisations!
22 févr. 2005 à 02:11
22 févr. 2005 à 01:21
j'allais justement intervenir sur la correction:
" $this->code = str_replace('<?php', '', $code);
$this->code = str_replace('<?', '', $code);
$this->code = str_replace('?>', '', $code);
par la fonction strtr :
$tableau=array('<?php'=>'','<?'=>'','?>'=>'');
$this->code=strtr($code,$tableau);
"
strtr est une fonction qui permet surtout de rendre le code plus claire et moins touffu, mais au final, au niveau du temps d'exécution, la décomposition de la fonction est forcément plus rapide:
for ($i=0; $i<10; $i++) {}
est aussi rapide que
$i++;
$i++;
$i++;
$i++;
$i++;
$i++;
$i++;
$i++;
$i++;
$i++;
mais c'est plus joli.
Les fonctions distribuées pas la lib php nous permet d'éviter de les réécrire, on peut considérer qu'elle sont toutes optimisées.
mais il est plus rapide de mettre le corps de la fonction (si tu le connais) plutot que l'appel a la focntion:
function f(......)
{ ......corps de la fonction....}
....code....
f(........);
....code......
est plus lent que
.....code........
........corps de la fonction........
.........code.........
puisqu'il oblige l'interpreteur php à faire un appel a la fonction.
dans les langages comme C ou JAVA par contre, c'est la meme chose, puisque le programme est compilé, et en assembleur ca dont la meme chose.
Sinon, meme si c'est plus lent, j'utiliserai putot ta methode plus jolie et compacte, sachant que ca ne me derange pas (personnellement) que les utilisateurs de mes sites passent 0.000001 seconde de plus a charger ma page ....(les pauvres) lol
21 févr. 2005 à 10:15
Avec un textarea et un addslashes ca devrait marcher non?
21 févr. 2005 à 10:12
20 févr. 2005 à 14:48
20 févr. 2005 à 14:45
20 févr. 2005 à 14:30
20 févr. 2005 à 14:15
à ton service ;)
20 févr. 2005 à 13:58
20 févr. 2005 à 13:53
20 févr. 2005 à 13:40
20 févr. 2005 à 12:47
http://www.phpcs.com/code.aspx?id=13345
20 févr. 2005 à 12:43
20 févr. 2005 à 10:59
"Dans ce bout, je ne suis pas sûr qu'avec la virgule c'est une concaténation...
d'après ce que j'avais vu sur PHPCS, c'est seulement que les paramètres de fonctions qui sont séparés par des virgules, donc c'est comme si c'était divers echo de suite."
Je suis d'accord en partie sur ce point, seulement tu mets bien plusieurs paramètres à la suite mais collés (je me comprends), ce n'est pas comme les arguments d'une fonction au sens propre (après peut-être qu'en interne si).
Bref je garde ce terme ;-)
a ++
20 févr. 2005 à 09:48
19 févr. 2005 à 22:18
19 févr. 2005 à 22:12
19 févr. 2005 à 20:31
http://www.vulgarisation-informatique.com/optimiser-php.php
a++
19 févr. 2005 à 13:58
une petite idée de test : strtr VS str_replace (en passant des tableaux aux deux fonctions)
je viens de voir sur un site que str_replace est plus rapide, faudrait le confirmer si possible.
Petit test :
a ++
17 févr. 2005 à 22:28
17 févr. 2005 à 09:01
Malalam > Fais nous part de tes résultats ;)
17 févr. 2005 à 08:47
efficace et sympa :-)
Je sens que ca va m'amuser un moment!
Je vais lancer des paris sur la rapidite de telle ou telle fonction ;-)
17 févr. 2005 à 03:17
et ouais, il m'a l'air bien ton code fuckya
j'ai pas tout bien compris, mais il a l'air bien construit, plus que le mien.
je ne noterai pas, parce que je ne l'ai pas essayé.
Merci à celui qui m'envoiera un lien sur les classes (français ou anglais, peu importe)
16 févr. 2005 à 18:47
16 févr. 2005 à 18:44
pas mal comme test, je sens que je vais remplacer certaines fonctions de mon site ;-)
16 févr. 2005 à 18:33
16 févr. 2005 à 18:26
if(!is_array($code)) {
echo 'La variable $code n\'est pas un tableau ! ';
die();
}
if(!is_array($nom_du_bench)) {
echo 'La variable $nom_du_bench n\'est pas un tableau ! ';
die();
}
tu peux le remplacer par ça :
if(!is_array($code)) {
die('La variable $code n\'est pas un tableau ! ');
}
if(!is_array($nom_du_bench)) {
die('La variable $nom_du_bench n\'est pas un tableau ! ');
}
16 févr. 2005 à 18:21
16 févr. 2005 à 17:47
Bon je poste la modif pour le truc avec plusieurs noms bientot :)
16 févr. 2005 à 17:46
16 févr. 2005 à 17:45
bon ça va, j'avoue que j'ai vu pire ;-)
bon j'ai quand même trouvé quelques trucs :
$array array('0'> "$code");
que tu peux remplacer par :
$array = array(0=>$code);
Ensuite ça :
$this->code = str_replace('<?php', '', $code);
$this->code = str_replace('<?', '', $code);
$this->code = str_replace('?>', '', $code);
par la fonction strtr :
$tableau=array('<?php'=>'','<?'=>'','?>'=>'');
$this->code=strtr($code,$tableau);
Ensuite pour le XHTML est à remplacer par (tu peux appliquer un style font-style:italic dans la CSS pour les balises )
a ++