From: Nathan Rixham on 8 Oct 2010 12:16 chris h wrote: > Saeed here's a quick (and dirty) test I ran: > > > $tests = 1000000; > > $start = microtime(true); > for ($i=0; $i<$tests; $i++) { > > $a = md5( rand() ); > $b = md5( rand() ); > > $c = $a.$b; > } > var_dump( "By concat op:\t". (microtime(true) - $start) ); that's not a fair test because you have rand() and md5() calls in there (something temporally varying) Here's a quick test script which does 100 million iterations on both, 3 times to get some half measurable results $i = $its = 100000000; $tests = 3; $a = 'foo'; $b = 'bar'; while($tests-->0) { $t = microtime(true); while($i-->0) { $c = "$a$b"; } echo 'time .: ' . (microtime(true)-$t) . PHP_EOL; $i = $its; $t = microtime(true); while($i-->0) { $c = $a.$b; } echo 'time ": ' . (microtime(true)-$t) . PHP_EOL; } I also ran the tests in the opposite order just to ensure they were fair, results are that $a.$b (concatenation) averaged 22 seconds, and the "$a$b" approach was 28 seconds. Thus, concatenation is faster - but you have to get up to circa 10 million+ uses per second to use it. Best, Nathan |