- substr: documentation ( source)
- microtime: documentation ( source)
- strrpos: documentation ( source)
- get_class: documentation ( source)
<?php
namespace yii\db;
class test {
function formName1()
{
$class = get_class($this);
$pos = strrpos($class, '\\');
return $pos === false ? $class : substr($class, $pos + 1);
}
function formName2()
{
$reflector = new \ReflectionClass($this);
return $reflector->getShortName();
}
}
$test = new test;
$rounds = 1000;
$start = microtime(true);
for($i=0; $i<$rounds; $i++) {
$test->formName1();
}
echo (microtime(true) - $start);
echo "\n";
$start = microtime(true);
for($i=0; $i<$rounds; $i++) {
$test->formName2();
}
echo (microtime(true) - $start);