Need a quick way to parse the name of a class when it's namespaced? Try this:
<?php
namespace Engine;
function parse_classname ($name)
{
return array(
'namespace' => array_slice(explode('\\', $name), 0, -1),
'classname' => join('', array_slice(explode('\\', $name), -1)),
);
}
final class Kernel
{
final public function __construct ()
{
echo '<pre>', print_r(parse_classname(__CLASS__),1), '</pre>';
// Or this for a one-line method to get just the classname:
// echo join('', array_slice(explode('\\', __CLASS__), -1));
}
}
new Kernel();
?>
Outputs:
Array
(
[namespace] => Array
(
[0] => Engine
)
[classname] => Kernel
)