Bagaimana Mendapatkan Nama Kelas dalam PHP (PHP 5.5 dan Kemudian)?

Mary-Kate Olsen
Lepaskan: 2024-10-19 21:17:01
asal
558 orang telah melayarinya

How to Get Class Name in PHP (PHP 5.5 and Later)?

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 {
}
Salin selepas log masuk

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>
Salin selepas log masuk

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>
Salin selepas log masuk

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>
Salin selepas log masuk

Anda boleh dapatkan nama kelas menggunakan:

<code class="php">echo get_class($obj);</code>
Salin selepas log masuk

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!

sumber:php
Kenyataan Laman Web ini
Kandungan artikel ini disumbangkan secara sukarela oleh netizen, dan hak cipta adalah milik pengarang asal. Laman web ini tidak memikul tanggungjawab undang-undang yang sepadan. Jika anda menemui sebarang kandungan yang disyaki plagiarisme atau pelanggaran, sila hubungi admin@php.cn
Artikel terbaru oleh pengarang
Tutorial Popular
Lagi>
Muat turun terkini
Lagi>
kesan web
Kod sumber laman web
Bahan laman web
Templat hujung hadapan