Terdapat tiga jenis ahli PHP: 1. Atribut ahli (atribut kelas), yang merupakan pembolehubah yang ditakrifkan dalam kelas, digunakan untuk menyimpan data dalam kelas 2. Kaedah ahli, yang merupakan fungsi yang ditakrifkan dalam class , diberikan kepada objek untuk menyelesaikan peristiwa; 3. Pemalar kelas ialah pemalar yang ditakrifkan dalam kelas dan ditakrifkan menggunakan kata kunci const.
Persekitaran pengendalian tutorial ini: sistem windows7, versi PHP8, komputer DELL G3
Ahli kelas merujuk kepada siri data yang ditakrifkan dalam kelas Mereka adalah ahli peringkat pertama yang bergantung secara langsung pada kelas. Ahli kelas termasuk: atribut ahli, kaedah ahli dan pemalar kelas.
Atribut ahli (atribut kelas): pembolehubah yang ditakrifkan dalam kelas, digunakan untuk menyimpan data dalam kelas
Kaedah ahli: iaitu Fungsi ditakrifkan dalam kelas disediakan kepada objek untuk menyelesaikan peristiwa.
Pemalar kelas: Pemalar yang ditakrifkan dalam kelas, ditakrifkan menggunakan kata kunci const.
Sifat dan kaedah perlu diubah suai dengan pengubahsuai kelayakan akses apabila diakses.
Sintaks:
class 类名{ public $成员属性名[=成员属性值]; //成员属性可以只定义而不赋值,放在之后赋值。 [public] function 成员方法名(){ ... } const 常量名=值; }
Atribut ahli kelas boleh ditakrifkan tanpa memberikan nilai akan diberikan mengikut situasi dalam operasi logik berikutnya, tetapi ia mesti diubah suai. dengan pengubah suai sekatan akses dan kaedah ahli Pengubahsuaian kelayakan akses boleh ditinggalkan, ia lalai kepada umum Pengubahsuaian kelayakan akan diterangkan secara terperinci kemudian.
Langkah-langkah untuk melaksanakan ahli kelas juga memerlukan analisis logik perniagaan:
Isytiharkan struktur kelas
Analisis sama ada kelas perlu menyimpan data untuk menentukan sama ada hendak mentakrifkan atribut ahli atau berapa banyak atribut ahli untuk ditentukan
Analisis kelas Sama ada sesuatu perlu dilakukan untuk menentukan sama ada untuk menentukan kaedah ahli.
Analisis sama ada pemalar perlu ditakrifkan
Penyampaian objek
Panggil ahli kelas melalui objek
Contoh: Contoh mudah kelas untuk menganalisis penyerahan berita
Untuk melaksanakan penyerahan berita, mula-mula mengisytiharkan struktur kelas:
class devote{ }
Kemudian menganalisis sama ada ia diperlukan Untuk menyimpan data, adalah jelas bahawa data mesti disimpan semasa menghantar berita Pertama, tajuk berita dan kandungan berita mesti disimpan, dan kemudian maklumat penyumbang, termasuk nama panggilan, alamat e-mel, nombor telefon bimbit, dll.
Kami menyimpan data ini melalui atribut ahli:
class devote{ public $nickname="投稿人"; public $title="新闻标题"; public $content="投稿内容"; public $email="邮箱"; public $phone="手机号"; }
Kemudian analisis sama ada operasi perlu dilakukan Semasa menghantar berita, anda mesti menapis kandungan berita dahulu, menyekat perkataan yang tidak sesuai dan kemudian serahkannya ke pangkalan data untuk disimpan, menunggu semakan.
class devote{ public $nickname="投稿人"; public $content="投稿内容"; public $email="邮箱"; public $phone="手机号"; function clear($content){ //过滤新闻内容 } function input(){ //提交到数据库 } }
Adakah saya memerlukan pemalar kelas? Ia tidak diperlukan buat masa ini, maka langkah seterusnya ialah membuat instantiate kelas, dan kemudian memanggil ahli melalui objek untuk melaksanakan fungsi.
$devote=new devote(); //实例化对象 $devote->nickname="小杜"; $devote->title="一件大事"; $devote->content="我手机没电了"; $devote->email="2811051813@qq.com"; $devote->phone="就不告诉你"; $devote->clear($devote->content); $devote->input(); //通过调用成员实现业务
Mengenai panggilan ahli kelas, kami menggunakan pautan -> Objek->Nama atribut;
Sila ambil perhatian: Tidak perlu menambah simbol $ semasa memanggil nama atribut. Tetapi apabila mentakrifkan atribut, mesti ada simbol $ untuk menunjukkan pembolehubah yang menentukan. Memanggil atribut akan mendapat nilai atribut semasa, dan memberikan nilai padanya akan mengubah nilainya Seperti di atas, jika atribut tajuk dipanggil secara langsung, nilai yang diperoleh ialah "tajuk berita". ia diberikan nilai sekali lagi, ini Nilai tajuk adalah masalah besar Jika atribut ditetapkan semula, nilai yang diperoleh dengan menggunakan atribut seterusnya akan menjadi kandungan yang ditetapkan kemudian, kerana atribut kelas sebenarnya adalah pembolehubah.
Penugasan semula adalah bersamaan dengan:
Panggil kaedah kelas:$devote->title="一件大事"; //等同于: public $title="一件大事";
Memanggil pemalar kelas ialah panggilan statik, yang akan diterangkan secara terperinci kemudian. Anda boleh memaparkan kandungan di atas secara visual dengan mencetak objek:
Uji sendiri, anda boleh melihat bahawa nilai atribut ahli adalah lalai jika anda hantar objek kepada ahli Tetapkan semula atribut, dan kemudian cetak objek:
class devote{ public $nickname="投稿人"; public $content="投稿内容"; public $email="邮箱"; public $phone="手机号"; function clear($content){ //过滤新闻内容 } function input(){ //提交到数据库 } } $devote=new devote(); var_dump($devote); //object(devote)#1 (4) { ["nickname"]=> string(9) "投稿人" ["content"]=> string(12) "投稿内容" ["email"]=> string(6) "邮箱" ["phone"]=> string(9) "手机号" }
$devote->nickname="小杜"; $devote->title="一件大事"; $devote->content="我手机没电了"; $devote->email="2811051813@qq.com"; $devote->phone="就不告诉你"; $devote->clear($devote->content); $devote->input(); var_dump($devote);
$devote->id=1; /* 打印结果: object(devote)#1 (6) { ["nickname"]=> string(6) "小杜" ["content"]=> string(18) "我手机没电了" ["email"]=> string(17) "2811051813@qq.com" ["phone"]=> string(15) "就不告诉你" ["title"]=> string(12) "一件大事" ["id"]=> int(1) } */
echo $devote->id; //输出1
var_dump($devote->ids); //NULL
unset($devote->id); var_dump($devote->id); //NULL
$devote->age=18; $dv=new devote(); var_dump($dv); //object(devote)#2 (4) { ["nickname"]=> string(9) "投稿人" ["content"]=> string(12) "投稿内容" ["email"]=> string(6) "邮箱" ["phone"]=> string(9) "手机号" }
Nota: Ahli kelas boleh ditakrifkan secara tak terhingga dalam kelas, tetapi kelas boleh hanya mengandungi atribut kelas dan kaedah kelas , pemalar kelas dan sintaks lain tidak boleh ditulis dalam kelas.
$devote->input();
Tutorial Video PHP
"class Test{ echo 1234; var_dump("错误"); if($a==1){ echo "True"; } } //syntax error, unexpected 'echo' (T_ECHO), expecting function (T_FUNCTION) or const (T_CONST)
Atas ialah kandungan terperinci Terdapat beberapa jenis ahli php. Untuk maklumat lanjut, sila ikut artikel berkaitan lain di laman web China PHP!