PHP静态方法和属性

Aug 08, 2016 am 09:32 AM
class function public static

class hw
{
	public static function hi()
	{
		return 'Hello World';
	}
}
echo hw::hi();//Output:Hellp World

class hw2
{
	public function hi()
	{
		return 'Hello Wrold';
	}
}
echo hw2::hi();//Output:Hellp World
Salin selepas log masuk

从上例看出,使用了static和不适用static属性以后都可以直接使用::方法从外面直接调用。但是为了效率和其他方面因素,还是建议使用static来限制。

static类内部调用方法

class foo
{
    private static function c()
    {
        return 'abcde';
    }

    public static function a()
    {
        echo self::c();
    }

    public static function b()
    {
        echo $this->c();
    }

    public function  e()
    {
        echo self::c();
    }
}
foo::a();//Output:abcde
foo::b();//Output:Fatal error: Using $this when not in object context in
foo::e();//Output:abcef
Salin selepas log masuk

使用了static关键字来限制的方法必须使用self::在本类内部引用。

static属性

class foo
{
	public static $a;
	public static function a()
	{
		self::$a = 'abcd';
	}
}
foo::a();//Output:abcde
echo foo::$a;
Salin selepas log masuk

static继承与使用

class foo
{
	public static $a;
	public static function a()
	{
		return 'abcde';
	}
}

class soo extends foo
{
	public static function a()
	{
		echo '12345';
	}
}

soo::a();//Output:12345
Salin selepas log masuk
static的继承与普通类的继承方法一样,并没有太大区别。

class foo
{
	public static $a;
	public static function a()
	{
		return 'abcde';
	}
}

class soo extends foo
{
	public static function a()
	{
		echo parent::a();
	}
}

soo::a();//Output:12345
Salin selepas log masuk

只是使用的时候有写区别,必须是parent::方法来引用父类的方法,并且不能直接self::来使用的方法,不然不会有输出:

class foo
{
	public static $a;
	public static function a()
	{
		return 'abcd';
	}
}
 
class soo extends foo
{
	public static  function aa()
	{
		echo self::a();
	}
}
soo::a();  
Salin selepas log masuk

以上就介绍了PHP静态方法和属性,包括了方面的内容,希望对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

Alat AI Hot

Undresser.AI Undress

Undresser.AI Undress

Apl berkuasa AI untuk mencipta foto bogel yang realistik

AI Clothes Remover

AI Clothes Remover

Alat AI dalam talian untuk mengeluarkan pakaian daripada foto.

Undress AI Tool

Undress AI Tool

Gambar buka pakaian secara percuma

Clothoff.io

Clothoff.io

Penyingkiran pakaian AI

AI Hentai Generator

AI Hentai Generator

Menjana ai hentai secara percuma.

Artikel Panas

R.E.P.O. Kristal tenaga dijelaskan dan apa yang mereka lakukan (kristal kuning)
3 minggu yang lalu By 尊渡假赌尊渡假赌尊渡假赌
R.E.P.O. Tetapan grafik terbaik
3 minggu yang lalu By 尊渡假赌尊渡假赌尊渡假赌
R.E.P.O. Cara Memperbaiki Audio Jika anda tidak dapat mendengar sesiapa
3 minggu yang lalu By 尊渡假赌尊渡假赌尊渡假赌

Alat panas

Notepad++7.3.1

Notepad++7.3.1

Editor kod yang mudah digunakan dan percuma

SublimeText3 versi Cina

SublimeText3 versi Cina

Versi Cina, sangat mudah digunakan

Hantar Studio 13.0.1

Hantar Studio 13.0.1

Persekitaran pembangunan bersepadu PHP yang berkuasa

Dreamweaver CS6

Dreamweaver CS6

Alat pembangunan web visual

SublimeText3 versi Mac

SublimeText3 versi Mac

Perisian penyuntingan kod peringkat Tuhan (SublimeText3)

Cara menggunakan kelas dan kaedah dalam Python Cara menggunakan kelas dan kaedah dalam Python Apr 21, 2023 pm 02:28 PM

Konsep dan kejadian kelas dan kaedah Kelas (Kelas): digunakan untuk menerangkan koleksi objek dengan sifat dan kaedah yang sama. Ia mentakrifkan sifat dan kaedah yang biasa kepada setiap objek dalam koleksi. Objek ialah contoh kelas. Kaedah: Fungsi yang ditakrifkan dalam kelas. Kaedah pembinaan kelas __init__(): Kelas mempunyai kaedah khas (kaedah pembinaan) bernama init(), yang dipanggil secara automatik apabila kelas dijadikan instantiated. Pembolehubah instance: Dalam pengisytiharan kelas, atribut diwakili oleh pembolehubah tersebut dipanggil pembolehubah instance. Instantiation: Buat contoh kelas, objek khusus kelas. Warisan: iaitu, kelas terbitan (derivedclass) mewarisi kelas asas (baseclass)

Apakah maksud fungsi? Apakah maksud fungsi? Aug 04, 2023 am 10:33 AM

Fungsi bermaksud fungsi. Ia adalah blok kod yang boleh digunakan semula dengan fungsi tertentu Ia boleh menerima parameter input, melakukan operasi tertentu, dan mengembalikan hasil daripada blok yang boleh digunakan semula. kod untuk meningkatkan kebolehgunaan semula dan kebolehselenggaraan kod.

Apakah perbezaan antara versi pembangun dan versi awam iOS? Apakah perbezaan antara versi pembangun dan versi awam iOS? Mar 01, 2024 pm 12:55 PM

Setiap tahun sebelum Apple mengeluarkan versi utama baharu iOS dan macOS, pengguna boleh memuat turun versi beta beberapa bulan lebih awal untuk mengalaminya terlebih dahulu. Memandangkan perisian ini digunakan oleh orang awam dan pembangun, Apple telah melancarkan versi pembangun dan awam, yang merupakan versi beta awam bagi versi beta pembangun, untuk kedua-duanya. Apakah perbezaan antara versi pembangun dan versi awam iOS? Secara literal, versi pembangun ialah versi ujian pembangun dan versi awam ialah versi ujian awam. Versi pembangun dan versi awam menyasarkan khalayak yang berbeza. Versi pembangun digunakan oleh Apple untuk ujian oleh pembangun Anda memerlukan akaun pembangun Apple untuk memuat turun dan meningkatkannya.

Gantikan nama kelas elemen menggunakan jQuery Gantikan nama kelas elemen menggunakan jQuery Feb 24, 2024 pm 11:03 PM

jQuery ialah perpustakaan JavaScript klasik yang digunakan secara meluas dalam pembangunan web Ia memudahkan operasi seperti pengendalian acara, memanipulasi elemen DOM, dan melaksanakan animasi pada halaman web. Apabila menggunakan jQuery, anda sering menghadapi situasi di mana anda perlu menggantikan nama kelas elemen Artikel ini akan memperkenalkan beberapa kaedah praktikal dan contoh kod tertentu. 1. Gunakan kaedah removeClass() dan addClass() jQuery menyediakan kaedah removeClass() untuk pemadaman

python中class是什么意思 python中class是什么意思 May 21, 2019 pm 05:10 PM

class是python中的一个关键字,用来定义一个类,定义类的方法:class后面加一个空格然后加类名;类名规则:首字母大写,如果多个单词用驼峰命名法,如【class Dog()】。

Penjelasan terperinci tentang penggunaan Kelas PHP: Jadikan kod anda lebih jelas dan mudah dibaca Penjelasan terperinci tentang penggunaan Kelas PHP: Jadikan kod anda lebih jelas dan mudah dibaca Mar 10, 2024 pm 12:03 PM

Apabila menulis kod PHP, menggunakan kelas adalah amalan yang sangat biasa. Dengan menggunakan kelas, kami boleh merangkum fungsi dan data yang berkaitan dalam satu unit, menjadikan kod lebih jelas, lebih mudah dibaca dan lebih mudah diselenggara. Artikel ini akan memperkenalkan penggunaan PHPClass secara terperinci dan menyediakan contoh kod khusus untuk membantu pembaca memahami dengan lebih baik cara menggunakan kelas dalam projek sebenar untuk mengoptimumkan kod. 1. Cipta dan gunakan kelas Dalam PHP, anda boleh menggunakan kelas kata kunci untuk mentakrifkan kelas dan mentakrifkan sifat dan kaedah dalam kelas.

Cara SpringBoot menyulitkan dan melindungi fail kelas melalui pemuat kelas tersuai Cara SpringBoot menyulitkan dan melindungi fail kelas melalui pemuat kelas tersuai May 11, 2023 pm 09:07 PM

Latar Belakang Baru-baru ini, kod perniagaan utama telah disulitkan untuk rangka kerja syarikat untuk mengelakkan kod kejuruteraan daripada mudah dipulihkan melalui alat penyahkompilasi seperti jd-gui Konfigurasi dan penggunaan skim pengeliruan yang berkaitan adalah agak rumit dan terdapat banyak masalah untuk projek springboot, jadi fail kelas disulitkan dan kemudiannya Peloder kelas tersuai dinyahsulit dan dimuatkan Penyelesaian ini tidak benar-benar selamat Ia hanya meningkatkan kesukaran penyahkompilasian Ia menghalang lelaki tetapi bukan penjahat dalam rajah di bawah. Pemalam maven menyulitkan kompilasi menggunakan pemalam maven tersuai Fail kelas yang ditentukan disulitkan, dan fail kelas yang disulitkan disalin ke laluan yang ditentukan.

Ralat Vue: Tidak dapat menggunakan v-bind untuk mengikat kelas dan gaya dengan betul, bagaimana untuk menyelesaikannya? Ralat Vue: Tidak dapat menggunakan v-bind untuk mengikat kelas dan gaya dengan betul, bagaimana untuk menyelesaikannya? Aug 26, 2023 pm 10:58 PM

Ralat Vue: Tidak dapat menggunakan v-bind untuk mengikat kelas dan gaya dengan betul, bagaimana untuk menyelesaikannya? Dalam pembangunan Vue, kami sering menggunakan arahan v-bind untuk mengikat kelas dan gaya secara dinamik, tetapi kadangkala kami mungkin menghadapi beberapa masalah, seperti tidak dapat menggunakan v-bind dengan betul untuk mengikat kelas dan gaya. Dalam artikel ini, saya akan menerangkan punca masalah ini dan memberi anda penyelesaian. Pertama, mari kita fahami arahan v-bind. v-bind digunakan untuk mengikat V

See all articles