JD *_*cks 4 php oop php4 classname
我有一个函数,它将一个类作为参数传递给它.我想将传递的类的类名称作为字符串.
我尝试将此方法放在传递的类中:
function getClassName()
{
return __CLASS__;
}
Run Code Online (Sandbox Code Playgroud)
但是如果类是扩展的,我认为这将返回子类的名称,但它仍然返回超类的名称,我觉得有点奇怪.
因此,如果将$ var作为参数传递给函数,是否有办法获取类名的字符串?
谢谢!!
nor*_*ron 12
请参阅get_class,这应该是您正在尝试实现的目标.
$class_name = get_class($object);
Run Code Online (Sandbox Code Playgroud)
Ozz*_*ech 11
如何获取没有命名空间的类名的最简单方法是:
$class = explode('\\', get_called_class());
echo end($class);
Run Code Online (Sandbox Code Playgroud)
或者使用preg_replace
echo preg_replace('/.*([\w]+)$/U', '$1', get_called_class());
Run Code Online (Sandbox Code Playgroud)