Skip to content

Instantly share code, notes, and snippets.

@frak
Created February 21, 2015 20:21
Show Gist options
  • Star 0 You must be signed in to star a gist
  • Fork 0 You must be signed in to fork a gist
  • Save frak/d7931facf5ba2b4d835e to your computer and use it in GitHub Desktop.
Save frak/d7931facf5ba2b4d835e to your computer and use it in GitHub Desktop.
Please don't use sprintf...
<?php
$maxiter = 10000000;
$value = "1234";
$time_start = microtime(true);
for ($i = 0; $i < $maxiter; ++$i) {
$string = "This is " . $value;
}
$time_end = microtime(true);
$time = $time_end - $time_start;
echo "concatenate in $time seconds\n";
$time_start = microtime(true);
for ($i = 0; $i < $maxiter; ++$i) {
$string = "This is {$value}";
}
$time_end = microtime(true);
$time = $time_end - $time_start;
echo "interpolated in $time seconds\n";
$time_start = microtime(true);
for ($i = 0; $i < $maxiter; ++$i) {
$string = sprintf('This is %s', $value);
}
$time_end = microtime(true);
$time = $time_end - $time_start;
echo "sprintf in $time seconds\n";
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment