- var_dump: documentation ( source)
- array_sum: documentation ( source)
- microtime: documentation ( source)
<?php
class Foo {}
function f0($foo) {}
function f1(Foo $foo) {}
function f2(Foo $foo = null) {}
$times = array();
for ($j = 0; $j < 10; $j++) {
$start = microtime(true);
for ($i = 0; $i < 1000000; $i++) {
f0(new Foo());
}
$times[] = microtime(true) - $start;
}
var_dump(array_sum($times) / 10);
$times = array();
for ($j = 0; $j < 10; $j++) {
$start = microtime(true);
for ($i = 0; $i < 1000000; $i++) {
f1(new Foo());
}
$times[] = microtime(true) - $start;
}
var_dump(array_sum($times) / 10);
$times = array();
for ($j = 0; $j < 10; $j++) {
$start = microtime(true);
for ($i = 0; $i < 1000000; $i++) {
f2(new Foo());
}
$times[] = microtime(true) - $start;
}
var_dump(array_sum($times) / 10);