私は好奇心を持っています。私は1ミルの単純な配列要素の配列を作成し、それらをループする単純なPHPスクリプトを作成しました。同じコードの2回目の実行時のPHP実行時間
最初の実行では、約1,4秒かかると思われます。 しかし、同じコードの2回目の実行では、常に約2,1秒かかります。私は同じ結果でこれを数回繰り返しました。
これはなぜですか?ここ
コードサンプル:
$timeStart = microtime(true);
$invoices = array();
for ($i = 1; $i <= 1000000; $i++) {
$invoices[] = array(
'issuedValue' => $i,
'fiscalNumber' => $i,
'random1' => $i,
'random2' => $i,
'random3' => $i,
);
}
foreach ($invoices as $invoice) {
// nothing here
}
var_dump(microtime(true) - $timeStart);
// second iteration here
$timeStart = microtime(true);
$invoices = array();
for ($i = 1; $i <= 1000000; $i++) {
$invoices[] = array(
'issuedValue' => $i,
'fiscalNumber' => $i,
'random1' => $i,
'random2' => $i,
'random3' => $i,
);
}
foreach ($invoices as $invoice) {
// nothing here
}
var_dump(microtime(true) - $timeStart);
どちらの場合でも「何か」と同じものがあると思いますか?私の見解は、そこにあるだろう... forループには何も明白でないので。また、同じテストを複数回実行して平均を取ってください...他の項目が速度に影響を与える可能性があります。 – Barry
あなたのコードをループで実行して、結果を見てください。PHPを遅くするいくつかの追加のプロセスかもしれません。 – Justinas