Rumah >pembangunan bahagian belakang >tutorial php >Mengapa Kaedah Kelas Statik Abstrak Tidak Dibenarkan dalam PHP 5.2?
Pada asalnya dikodkan tanpa amaran yang ketat, projek kini mencetuskan banyak amaran selepas mendayakannya. Antaranya ialah amaran tentang fungsi statik abstrak dalam Program kelas induk abstrak. Menurut dokumentasi, fungsi statik abstrak secara tidak sengaja dibenarkan dalam PHP 5.0.x dan 5.1.x dan tidak lagi dibenarkan.
PHP 5.2 kekurangan statik lewat bindings, yang tersedia dalam PHP 5.3. Ciri ini membolehkan kaedah kelas induk memanggil kaedah statik kelas anak mereka. Tanpa itu, kaedah statik abstrak dalam PHP 5.2 tidak berkesan kerana kelas induk tidak dapat memanggil kaedah statik kelas kanak-kanak.
Setelah pengenalan pengikatan statik lewat, kaedah statik abstrak kembali relevan . Walaupun begitu, amaran itu berterusan. Walaupun boleh dipertikaikan bahawa kaedah statik abstrak mungkin membawa kepada mendedahkan kaedah awam yang rosak dalam kelas abstrak, hujah ini dianggap lemah.
Laporan pepijat PHP 53081 diminta penghapusan amaran itu. Pada mulanya ditolak sebagai palsu, laporan itu kemudian ditutup sebagai palsu kerana salah faham oleh Rasmus Lerdorf, pencipta PHP.
Amaran akan dialih keluar dalam PHP 7 terima kasih kepada PHP RFC Nikita Popov: Klasifikasikan semula notis E_STRICT. Langkah ke arah kewarasan ini akan membolehkan pembangun menggunakan kaedah statik abstrak tanpa menghadapi amaran salah yang ditemui dalam PHP 5.2 .
Atas ialah kandungan terperinci Mengapa Kaedah Kelas Statik Abstrak Tidak Dibenarkan dalam PHP 5.2?. Untuk maklumat lanjut, sila ikut artikel berkaitan lain di laman web China PHP!