在 PHP 中取得類別名稱
在 PHP 環境中,可以使用多種方法來取得類別的名稱。常見的方法是使用 get_class() 函數。但要注意的是,get_class() 只適用於對象,不適用於類別名稱。
例如,如果我們有一個類別定義為:
public class MyClass { }
在 Java 中,我們可以使用以下方法檢索類別名稱:String className = MyClass.class.getSimpleName();。我們如何在 PHP 中實現相同的功能?
使用類別名稱解析(PHP 5.5 及更高版本)
PHP 5.5 引入了一個稱為類別名稱解析的功能,它允許您直接取得類別名稱。這可以使用語法來完成:ClassName::class.
例如:
<code class="php">namespace Name\Space; class ClassName {} echo ClassName::class;</code>
此程式碼將輸出字串「ClassName」。
如果您需要在類別方法中使用此功能,您可以使用 static::class。
<code class="php">namespace Name\Space; class ClassName { /** * @return string */ public function getNameOfClass() { return static::class; } } $obj = new ClassName(); echo $obj->getNameOfClass();</code>
使用 get_class()(5.5 之前的 PHP 版本)
對於PHP 5.5之前的版本,可以使用get_class()函數來取得類別名稱。但是,需要注意的是,此函數作用於對象,而不是類別名稱。
例如,如果您有「ClassName」類別的實例:
<code class="php">$obj = new ClassName();</code>
您可以使用下列方式取得類別名稱:
<code class="php">echo get_class($obj);</code>
此程式碼將輸出字元字串“ClassName”。
以上是如何在 PHP 中取得類別名稱(PHP 5.5 及更高版本)?的詳細內容。更多資訊請關注PHP中文網其他相關文章!