如何在PHP中获取类名?

php
2022-08-30 07:05:42
public class MyClass {

}

在Java中,我们可以获得类名String className = MyClass.class.getSimpleName();

如何在PHP中执行此操作?我已经知道get_class(),但它仅适用于对象。目前我在Active Record工作。我需要像.MyClass::className


答案 1

从 PHP 5.5 开始,您可以通过 ClassName::class 使用类名解析。

查看 PHP5.5 的新功能

<?php

namespace Name\Space;

class ClassName {}

echo ClassName::class;

?>

如果要在类方法中使用此功能,请使用 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()。


答案 2

您可以在类中使用来获取名称。__CLASS__

http://php.net/manual/en/language.constants.predefined.php


推荐