$ 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