Rumah > pembangunan bahagian belakang > tutorial php > Bagaimana untuk Dapatkan CONST yang Ditakrifkan dalam Kelas PHP?

Bagaimana untuk Dapatkan CONST yang Ditakrifkan dalam Kelas PHP?

Susan Sarandon
Lepaskan: 2024-11-13 07:58:02
asal
772 orang telah melayarinya

How to Retrieve Defined CONSTs in PHP Classes?

Refleksi Malar: Mendapatkan KONST Ditakrifkan dalam Kelas PHP

Dalam PHP, mengakses CONST yang ditakrifkan pada kelas boleh mencabar. Timbul persoalan: "Bolehkah saya mendapatkan senarai CONST yang dikaitkan dengan kelas tertentu?"

Kelas dan KONST

Pertimbangkan definisi kelas berikut:

class Profile {
    const LABEL_FIRST_NAME = "First Name";
    const LABEL_LAST_NAME = "Last Name";
    const LABEL_COMPANY_NAME = "Company";
}
Salin selepas log masuk

Refleksi kepada Rescue

Walaupun fungsi PHP standard get_defined_constants() tidak boleh mendapatkan CONST yang ditakrifkan pada kelas tertentu, pustaka Reflection menyediakan penyelesaian. Reflection membolehkan kami memperoleh maklumat tentang kelas dan sifatnya.

Untuk mendapatkan CONST, cipta objek ReflectionClass untuk kelas yang dikehendaki:

$refl = new ReflectionClass('Profile');
Salin selepas log masuk

Kemudian, gunakan kaedah getConstants() untuk mendapatkan tatasusunan yang mengandungi CONST yang ditakrifkan:

$constants = $refl->getConstants();
Salin selepas log masuk

Tatasusunan ini termasuk kedua-dua nama CONST dan nilai, membenarkan akses dan manipulasi yang fleksibel.

Contoh Output

Melaksanakan kod akan menghasilkan output berikut:

Array
(
    'LABEL_FIRST_NAME' => 'First Name',
    'LABEL_LAST_NAME' => 'Last Name',
    'LABEL_COMPANY_NAME' => 'Company'
)
Salin selepas log masuk

Kesimpulan

Dengan memanfaatkan Reflection, pembangun PHP boleh dengan mudah dapatkan CONST yang ditakrifkan pada kelas, memberikan cerapan berharga dan kawalan ke atas kefungsian kelas.

Atas ialah kandungan terperinci Bagaimana untuk Dapatkan CONST yang Ditakrifkan dalam Kelas PHP?. Untuk maklumat lanjut, sila ikut artikel berkaitan lain di laman web China PHP!

sumber:php.cn
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