与えられた 2 クラスa
とb
a
クラスは非常に大きく、数十のメソッドがあります。
b
クラスコードはこれだけです:
class b {
function __construct () {
// do nothing
}
}
このクラスからオブジェクトを作成するパフォーマンスをテストしたいのですが、初めて、大きなクラスからa
何百万回もサイクルでオブジェクトを作成します。
$date_1 = microtime(TRUE);
for ($i = 0; $i < 1000000; $i++) {
$obj = new a();
}
$date_2 = microtime(TRUE);
echo $date_2 - $date_1;
結果は約 0.34 秒です。
今、私b
はサイクルで小さなクラスからオブジェクトを作成しています。
結果はなんと、1回目のテストタイムより約0.47秒…
なぜこれが起こったのか教えてもらえますか?それとも、テストのどこかで間違っているのでしょうか?