Comme mentionné précédemment, ce n'est qu'en trouvant le code qui affecte la vitesse que nous pouvons l'optimiser. Les classes Benchmark_Timer et Benchmark_Iterate du package de référence de PEAR peuvent être utilisées pour tester facilement la vitesse d'exécution du script. (Veuillez vérifier vous-même les informations pertinentes pour l'installation et la configuration de PEAR).
Tout d’abord, utilisez la classe Benchmark_Iterate pour tester le temps d’exécution d’une certaine fonction ou méthode d’une classe dans le programme.
benchmark1.php
require_once('Benchmark/Iterate.php');
$benchmark = new Benchmark_Iterate();
$benchmark->run(10, 'maFonction', 'test');
$result = $benchmark->get();
echo "
"; print_r($résultat); echo "
" ;
exit ;
fonction maFonction($var) {
//faire quelque chose
echo 'Bonjour';
}
?>
Créer un objet benchmark Iterate $benchmark Cet objet est utilisé pour exécuter la fonction myFunction 10 fois.
La variable $argument est transmise à myFunction à chaque fois. Les résultats d'analyse de plusieurs exécutions sont stockés dans $result, puis obtenus à l'aide de la méthode get() de l'objet de référence. Ce résultat est affiché à l'écran à l'aide de print_r(). Habituellement, le résultat ressemble à ceci :
Bonjour bonjour bonjour bonjour bonjour bonjour bonjour bonjour bonjour
Array
(
[1] => 0,000427 [2] => 0,000079 [3] => 0,000072 [4] => 0,000071 [5] => 0,000076 [6] => 0,000070 [7] => 0,000073 [8] => 0,0 00070 [ 9 ] => 0,000074 [10] => 0,000072 [moyenne] => 0,000108 [itérations] => 10)
Chaque fois que myFunction est exécuté, l'objet de référence suivra le temps d'exécution. Et le temps d'exécution moyen (ligne [moyenne]) sera calculé. En exécutant la fonction cible plusieurs fois, vous pouvez obtenir la durée d'exécution moyenne de la fonction.
Lors des tests réels, le nombre de fonctions doit être au moins 1 000 fois, afin que des résultats plus objectifs puissent être obtenus.