前述したように、速度に影響を与えるコードを見つけることによってのみ、コードを最適化できます。 PEAR のベンチマーク パッケージの Benchmark_Timer クラスと Benchmark_Iterate クラスを使用すると、スクリプトの実行速度を簡単にテストできます。 (PEAR のインストールと設定については、関連情報をご自身でご確認ください)。
まず、Benchmark_Iterate クラスを使用して、プログラム内のクラスの特定の関数またはメソッドの実行時間をテストします。
benchmark1.php
require_once('Benchmark/Iterate.php');
$benchmark = new Benchmark_Iterate();
$benchmark->run(10, 'myFunction','test');
$result = $benchmark->get();
エコー "
";
";
終了;
関数 myFunction($var) {
//何かをする
エコー「こんにちは」;
}
?>
ベンチマークを作成します。オブジェクト $benchmark を繰り返します。このオブジェクトは、myFunction 関数を 10 回実行するために使用されます。
$argument 変数は毎回 myFunction に渡され、複数の実行の解析結果が $result に格納され、ベンチマーク オブジェクトの get() メソッドを使用して取得されます。この結果は print_r() を使用して画面に出力されます。通常、出力は次のようになります。
Hello Hello Hello Hello Hello Hello Hello Hello Hello Hello Hello Hello
配列
(
[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 [平均] => 0.000108 [反復] => 10)
myFunction が実行されるたびに、ベンチマーク オブジェクトは実行時間を追跡します。そして、平均実行時間([平均]ライン)が計算されます。対象関数を複数回実行することで、関数の平均実行時間を取得できます。
実際のテストでは、より客観的な結果を得るために、関数の数は少なくとも 1,000 回必要です。