$ cat test.php <?php for ($j = 0; $j < 100; $j++) { $a = array(); for ($i = 0; $i < 300000; $i++) { $a[] = $i + $j; } } ?> $ time php test.php real 0m15.714s user 0m15.073s sys 0m0.588s $ vim test.php $ cat test.php <?php for ($j = 0; $j < 100; ++$j) { $a = array(); for ($i = 0; $i < 300000; ++$i) { $a[] = $i + $j; } } ?> $ time php test.php real 0m15.067s user 0m14.725s sys 0m0.228s
なんで前置インクリメントの方が速いかはプログラマならすぐ判るよね。それ以前に、前置と後置の違いが判ってたら普通は前置を使うよね。
何でWeb上ではこんなに後置インクリメントが溢れてるのか判らない。
まぁ、パフォーマンスとか気にするなら下手なチューニングするよりも最初からPython使っておけと。
$ cat test2.py for i in xrange(100): a = [] for j in xrange(300000): a.append(i+j) $ time python test2.py real 0m11.436s user 0m10.737s sys 0m0.672s