VIP de Programming

   

気になった発言とか簡易まとめ
ある程度まとまったらwikiにうpしよう!
レス集

[PHP]PHPにおけるループの速さ

単純なループは時に、どの処理が速いのか気になることがあります。

time コマンドをを10回ほど交互に実行してuser実行時間の平均を比べてみた。

$i++; ++$i;の違い

--------------loop1.php------------
$n=0;

for($i=0; $i<100000; $i++){
    $n++;
}

--------------loop2.php------------
$n=0;

for($i=0; $i<100000; ++$i){
    $n++;
}

●結果

php loop1.php : 0.028

php loop2.php : 0.021

2の方が133.33%速い

for whileの違い

--------------loop1.php------------
$n=0;

for($i=0; $i<100000; ++$i){
    $n++;
}

-------------loop2.php------------ 
$n=0;
$i=0;

while($i<100000){
    $n++;
    ++$i;
}  

●結果

php loop1.php : 0.029

php loop2.php : 0.02

2の方が145.0%速い

do{ }while(); while()の違い

-------------loop1.php------------
$n=0;
$i=0;

do{
    $n++;
    ++$i;
}while($i<100000);

-------------loop2.php------------
$n=0;
$i=0;

while($i<100000)
    $n++;
    ++$i;
}  

●結果

php loop1.php : 0.023 : 1.000

php loop2.php : 0.021 : 0.913

2のほうが若干速い

以上です。

まとめ

$n=0;
$i=0;
while($i<100000){
    $n++;
    ++$i;
}  

をつかえと

Permalink
Comments (View)