如何获得PHP中的类名? [英] How do I get class name in PHP?

查看:60
本文介绍了如何获得PHP中的类名?的处理方法,对大家解决问题具有一定的参考价值,需要的朋友们下面随着小编来一起学习吧!

问题描述

public class MyClass {

}

在Java中,我们可以使用String className = MyClass.class.getSimpleName();

In Java, we can get class name with String className = MyClass.class.getSimpleName();

如何在PHP中做到这一点?我已经知道 get_class() ,但是它仅适用于对象.目前,我在Active Record中工作.我需要像MyClass::className这样的语句.

How to do this in PHP? I already know get_class(), but it works only for objects. Currently I work in Active Record. I need statement like MyClass::className.

推荐答案

自PHP 5.5 起,您可以通过 ClassName :: class 使用类名解析.

Since PHP 5.5 you can use class name resolution via ClassName::class.

请参见 PHP5.5的新功能.

<?php

namespace Name\Space;

class ClassName {}

echo ClassName::class;

?>

如果要在类方法中使用此功能,请使用 static :: class :

If you want to use this feature in your class method use static::class:

<?php

namespace Name\Space;

class ClassName {
   /**
    * @return string
    */
   public function getNameOfClass()
   {
      return static::class;
   }
}

$obj = new ClassName();
echo $obj->getNameOfClass();

?>

对于旧版本的PHP ,您可以使用 get_class().

这篇关于如何获得PHP中的类名?的文章就介绍到这了,希望我们推荐的答案对大家有所帮助,也希望大家多多支持IT屋!

查看全文
登录 关闭
扫码关注1秒登录
发送“验证码”获取 | 15天全站免登陆