g2 Sun Jun 21 17:30:46 2009 UTC Added files: /phpruntests/code-samples arrayTest.php Log: phpruntests - add arrayTest (spl-performace-test)
http://cvs.php.net/viewvc.cgi/phpruntests/code-samples/arrayTest.php?view=markup&rev=1.1 Index: phpruntests/code-samples/arrayTest.php +++ phpruntests/code-samples/arrayTest.php <?php $size = isset($argv[1]) ? $argv[1] : 99999; // create array $testArray = array(); for ($i=0; $i<$size; $i++) { $testArray[$i] = rand(0,9); } print "size:\t$size\n"; flush(); // loop $s = microtime(true); for ($i=0; $i<$size; $i++) { if (isset($testArray[$i])) { if ($i%2 == 0) { $testArray[$i] = 'G'; } } } $e = microtime(true); $tl = round($e-$s, 5); print "loop:\t$tl sec (100%)\n"; flush(); // iterator $s = microtime(true); $testObject = new ArrayObject($testArray); $iterator = $testObject->getIterator(); while ($iterator->valid()) { if ($iterator->key()%2 == 0) { $testObject[$iterator->current()] = 'G'; } $iterator->next(); } $e = microtime(true); $ti = round($e-$s, 5); $diff = round($ti/$tl*100, 0); print "spl:\t$ti sec ($diff%)\n"; print "DIFF:\t".($ti-$tl)." sec\n"; flush(); ?> -- PHP CVS Mailing List (http://www.php.net/) To unsubscribe, visit: http://www.php.net/unsub.php