Rumah  >  Artikel  >  pembangunan bahagian belakang  >  Bagaimana untuk mendapatkan kaedah kelas semasa dalam php (dua cara)

Bagaimana untuk mendapatkan kaedah kelas semasa dalam php (dua cara)

PHPz
PHPzasal
2023-04-12 09:20:001327semak imbas

Untuk pembangun PHP, mendapatkan kaedah kelas semasa adalah operasi yang sangat asas tetapi penting. Dalam PHP, jika kita perlu mendapatkan kaedah kelas semasa, kita boleh melakukannya dalam dua cara berikut.

Kaedah 1: Gunakan pemalar ajaib __METHOD__

__METHOD__ ialah pemalar ajaib dalam PHP, yang boleh mengembalikan nama kaedah yang sedang dilaksanakan. Oleh itu, kita boleh mendapatkan kaedah kelas semasa dengan menggunakannya. Berikut ialah contoh kod:

class Person {
    public function getName() {
        echo __METHOD__;
    }
}

$p = new Person();
$p->getName(); //输出Person::getName

Dalam contoh di atas, kami mencipta kelas Orang dan menjadikannya instantiated. Kemudian, kami memanggil kaedah getName kelas Person dan mengeluarkan nilai pemalar __METHOD__ dalam kaedah tersebut.

Apabila kita memanggil kaedah getName, pemalar __METHOD__ akan mengembalikan "Person::getName", iaitu nama kaedah semasa yang kita perlukan.

Kaedah 2: Gunakan fungsi get_class_methods

Cara lain untuk mendapatkan kaedah kelas semasa ialah menggunakan fungsi get_class_methods PHP terbina dalam. Fungsi ini boleh mengembalikan tatasusunan semua kaedah awam dalam kelas, dan nama kunci dalam tatasusunan ini ialah nama kaedah, dan nilainya ialah objek boleh panggil yang merujuk kepada contoh kelas semasa.

Berikut ialah contoh kod:

class Person {
    public function getName() {
        echo "My name is Joe";
    }
}

$p = new Person();
$methods = get_class_methods($p);
var_dump($methods);

Dalam contoh di atas, kami mencipta kelas Orang dan menjadikannya instantiated. Kemudian, kami menggunakan fungsi get_class_methods untuk mendapatkan semua kaedah dalam kelas Person dan mengeluarkannya ke konsol.

Apabila kita menjalankan kod di atas, hasil pulangan fungsi get_class_methods akan menjadi output, yang merupakan tatasusunan semua kaedah awam dalam kelas, seperti ditunjukkan di bawah:

array(1) {
  [0]=>
  string(7) "getName"
}

Dalam tatasusunan ini , nama kunci ialah nama kaedah "getName", dan nilainya ialah objek boleh panggil bagi contoh kelas semasa.

Ringkasan

Di atas ialah dua cara untuk PHP mendapatkan kaedah kelas semasa. Kita boleh memilih untuk menggunakan pemalar ajaib __METHOD__ atau fungsi terbina dalam get_class_methods untuk mendapatkan semua kaedah kelas semasa. Untuk pemula, disyorkan untuk menggunakan pemalar ajaib __METHOD__ untuk mendapatkan kaedah kelas semasa, kerana ia lebih mudah dan lebih mudah difahami. Untuk pembangun PHP dengan pengalaman tertentu, fungsi get_class_methods akan menjadi lebih biasa dan praktikal.

Atas ialah kandungan terperinci Bagaimana untuk mendapatkan kaedah kelas semasa dalam php (dua cara). Untuk maklumat lanjut, sila ikut artikel berkaitan lain di laman web China PHP!

Kenyataan:
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