Optimisation
Dernière modification : -
// 2007/07/30 15:24 / 90.1.187.152
→ ajouter une fonction et ses appels à des endroits stratégiques
→ on obtient le résultat dans le fichier perfs.log :
→ ajouter une fonction et ses appels à des endroits stratégiques
→ on obtient le résultat dans le fichier perfs.log :
→ ajouter une fonction et ses appels à des endroits stratégiques
→ on obtient le résultat dans le fichier perfs.log :
Profiler le code
→ ajouter une fonction et ses appels à des endroits stratégiques
function profile ($txt,$dump=FALSE)
{
static $times;
if ($dump)
{
if (!file_exists("perfs.log"))
{
$f = fopen("perfs.log","w");
for ($i=1;$i<sizeof($times);$i++)
fwrite($f,sprintf("%s:",$times[$i][0])); // header
fwrite($f,"\n");
}
else
$f = fopen("perfs.log","a");
for ($i=1;$i<sizeof($times);$i++)
fwrite($f,sprintf("%f:",$times[$i][1]-$times[$i-1][1])); // valeurs
fwrite($f,"\n");
fclose($f);
}
else
{
list($usec, $sec) = explode(" ", microtime());
$times[] = array($txt,((float)$usec + (float)$sec));
}
}
→ on obtient le résultat dans le fichier perfs.log :
Traitement:Formatage:
0.027288:0.407159:
0.027298:0.453744:
0.032468:0.444973:
0.025138:0.446650:
Axes d'améliorations
- remplacer preg_replace par str_replace la ou on peut
Profiler le code
→ ajouter une fonction et ses appels à des endroits stratégiques
function profile ($txt,$dump=FALSE)
{
static $times;
if ($dump)
{
if (!file_exists("perfs.log"))
{
$f = fopen("perfs.log","w");
for ($i=1;$i<sizeof($times);$i++)
fwrite($f,sprintf("%s:",$times[$i][0])); // header
fwrite($f,"\n");
}
else
$f = fopen("perfs.log","a");
for ($i=1;$i<sizeof($times);$i++)
fwrite($f,sprintf("%f:",$times[$i][1]-$times[$i-1][1])); // valeurs
fwrite($f,"\n");
fclose($f);
}
else
{
list($usec, $sec) = explode(" ", microtime());
$times[] = array($txt,((float)$usec + (float)$sec));
}
}
→ on obtient le résultat dans le fichier perfs.log :
Traitement:Formatage:
0.027288:0.407159:
0.027298:0.453744:
0.032468:0.444973:
0.025138:0.446650:
Axes d'améliorations
- remplacer preg_replace par str_replace la ou on peut
Profiler le code
→ ajouter une fonction et ses appels à des endroits stratégiques
function profile ($txt,$dump=FALSE)
{
static $times;
if ($dump)
{
if (!file_exists("perfs.log"))
{
$f = fopen("perfs.log","w");
for ($i=1;$i<sizeof($times);$i++)
fwrite($f,sprintf("%s:",$times[$i][0])); // header
fwrite($f,"\n");
}
else
$f = fopen("perfs.log","a");
for ($i=1;$i<sizeof($times);$i++)
fwrite($f,sprintf("%f:",$times[$i][1]-$times[$i-1][1])); // valeurs
fwrite($f,"\n");
fclose($f);
}
else
{
list($usec, $sec) = explode(" ", microtime());
$times[] = array($txt,((float)$usec + (float)$sec));
}
}
→ on obtient le résultat dans le fichier perfs.log :
Traitement:Formatage:
0.027288:0.407159:
0.027298:0.453744:
0.032468:0.444973:
0.025138:0.446650:
Axes d'améliorations
- remplacer preg_replace par str_replace la ou on peut