Rumah > Artikel > pembangunan bahagian belakang > Bagaimana Mendapatkan Nama Kelas dalam PHP (PHP 5.5 dan Kemudian)?
Mendapatkan Nama Kelas dalam PHP
Dalam persekitaran PHP, mendapatkan nama kelas boleh dilakukan menggunakan pelbagai kaedah. Satu pendekatan biasa ialah menggunakan fungsi get_class(). Walau bagaimanapun, adalah penting untuk ambil perhatian bahawa get_class() hanya terpakai kepada objek, bukan nama kelas.
Sebagai contoh, jika kita mempunyai kelas yang ditakrifkan sebagai:
public class MyClass { }
Di Java, kita boleh mendapatkan semula nama kelas menggunakan: String className = MyClass.class.getSimpleName();. Bagaimanakah kita boleh mencapai perkara yang sama dalam PHP?
Menggunakan Resolusi Nama Kelas (PHP 5.5 dan lebih baru)
PHP 5.5 memperkenalkan ciri yang dipanggil resolusi nama kelas, yang membolehkan anda untuk mendapatkan nama kelas secara langsung. Ini boleh dilakukan menggunakan sintaks: ClassName::class.
Contohnya:
<code class="php">namespace Name\Space; class ClassName {} echo ClassName::class;</code>
Kod ini akan mengeluarkan rentetan "ClassName".
Jika anda perlukan untuk menggunakan ciri ini dalam kaedah kelas, anda boleh menggunakan 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>
Menggunakan get_class() (versi PHP lebih lama daripada 5.5)
Untuk Versi PHP sebelum 5.5, fungsi get_class() boleh digunakan untuk mendapatkan nama kelas. Walau bagaimanapun, adalah penting untuk ambil perhatian bahawa fungsi ini beroperasi pada objek, bukan nama kelas.
Sebagai contoh, jika anda mempunyai contoh kelas "Nama Kelas":
<code class="php">$obj = new ClassName();</code>
Anda boleh dapatkan nama kelas menggunakan:
<code class="php">echo get_class($obj);</code>
Kod ini akan mengeluarkan rentetan "ClassName".
Atas ialah kandungan terperinci Bagaimana Mendapatkan Nama Kelas dalam PHP (PHP 5.5 dan Kemudian)?. Untuk maklumat lanjut, sila ikut artikel berkaitan lain di laman web China PHP!