Rumah  >  Artikel  >  pembangunan bahagian belakang  >  php memanggil kaedah biasa dalam kelas ini

php memanggil kaedah biasa dalam kelas ini

WBOY
WBOYasal
2023-05-22 19:39:07429semak imbas

Dalam PHP, kami biasanya mentakrifkan beberapa kaedah biasa dalam kelas untuk melengkapkan beberapa fungsi dan operasi biasa. Antara kaedah ini, beberapa kaedah perlu dipanggil di dalam kelas, manakala beberapa kaedah perlu dipanggil di luar kelas. Untuk dua keperluan panggilan yang berbeza ini, kita perlu menggunakan kaedah yang berbeza untuk melaksanakannya.

Artikel ini akan memperkenalkan cara memanggil kaedah biasa dalam kelas ini dalam PHP. Terutamanya termasuk kandungan berikut:

  1. Panggil kaedah biasa dalam kelas
  2. Panggil kaedah biasa di luar kelas
  3. Contoh kod lengkap

1. Panggil kaedah biasa dalam kelas

Untuk memanggil kaedah biasa dalam kelas, kita boleh menggunakan kata kunci "$this" untuk merujuk kepada objek kelas semasa. Sebagai contoh, untuk memanggil kaedah biasa dalam pembina kelas, anda boleh menggunakan kod berikut:

class MyClass{
    //定义一个普通方法
    public function myMethod($arg){
        //方法体
    }
    
    //类的构造函数
    public function __construct(){
        //在构造函数中调用myMethod()方法
        $this->myMethod('参数值');
    }
}

$obj = new MyClass();

Dalam kod di atas, kami menggunakan "$this->myMethod()" dalam pembina bagi kelas Kaedah biasa "myMethod()" yang ditakrifkan dalam kelas dipanggil.

Perlu diambil perhatian bahawa apabila memanggil kaedah biasa, kita perlu menggunakan operator "->" untuk menyambungkan objek kelas dan nama kaedah. Pada masa yang sama, jika kaedah mempunyai parameter, kita perlu meletakkan senarai parameter dalam kurungan "()" selepas nama kaedah.

2. Panggil kaedah biasa di luar kelas

Untuk memanggil kaedah biasa dalam kelas ini di luar kelas, kita perlu membuat instantiat kelas terlebih dahulu dan mendapatkan objek kelas sebelum membuat panggilan. Berbeza daripada memanggil dalam kelas, kita perlu menggunakan nama objek kelas dan bukannya kata kunci "$this" untuk menunjukkan objek kelas semasa.

Sebagai contoh, untuk memanggil kaedah biasa dalam kelas di luar kelas, anda boleh menggunakan kod berikut:

class MyClass{
    //定义一个普通方法
    public function myMethod($arg){
        //方法体
    }
}

//实例化MyClass类
$obj = new MyClass();

//调用MyClass类中的myMethod()方法
$obj->myMethod('参数值');

Dalam contoh ini, kami membuat instantiate kelas MyClass dan mendapatkan objek kelas" $obj" untuk memanggil kaedah biasa "myMethod()" yang ditakrifkan dalam kelas.

Perlu diambil perhatian bahawa tidak seperti menggunakan operator "->" semasa memanggil kaedah biasa di dalam kelas, kita juga perlu menggunakan operator "->" untuk menyambungkan objek kelas apabila memanggil di luar kelas. dan nama kaedah.

3. Contoh kod lengkap

Berikut ialah contoh kod lengkap untuk memanggil kaedah biasa dalam kelas ini dalam PHP:

class MyClass{
    //定义一个普通方法
    public function myMethod($arg){
        //方法体
        echo "参数值为:" . $arg;
    }
    
    //类的构造函数
    public function __construct(){
        //在构造函数中调用myMethod()方法
        $this->myMethod('构造函数调用');
    }
}

//实例化MyClass类
$obj = new MyClass();

//调用MyClass类中的myMethod()方法
$obj->myMethod('类外部调用');

Dalam contoh ini, kami mentakrifkan nama ialah kelas "MyClass" dan mentakrifkan kaedah biasa bernama "myMethod()" di dalamnya. Kami memanggil kaedah ini dalam pembina kelas dan di luar kelas masing-masing, dan lulus dalam nilai parameter yang berbeza.

Apabila kami melaksanakan program ini, keputusan berikut akan dikeluarkan:

参数值为:构造函数调用
参数值为:类外部调用

Di atas ialah kaedah dan contoh kod untuk memanggil kaedah biasa dalam kelas ini dalam PHP. Melalui amalan dan pembelajaran ini, kita boleh mempunyai pemahaman yang lebih mendalam tentang konsep kelas dan kaedah dalam PHP, dan cara menggunakannya dalam pembangunan sebenar untuk meningkatkan kebolehgunaan semula dan kebolehselenggaraan kod.

Atas ialah kandungan terperinci php memanggil kaedah biasa dalam kelas ini. 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