Rumah > Soal Jawab > teks badan
P粉6163836252023-08-16 14:16:18
Parameter yang diperlukan tanpa nilai lalai hendaklah diletakkan dahulu.
function test_function(int $xxx, int $yyy = 2) { return $xxx * $yyy; }
P粉4516148342023-08-16 09:03:20
Cara pengisytiharan fungsi ini telah ditamatkan dalam PHP 8.0 . Tidak masuk akal untuk menulis fungsi seperti ini kerana semua hujah (sehingga hujah terakhir yang diperlukan) perlu dinyatakan semasa memanggil fungsi. Ini juga menimbulkan kekeliruan apabila masalah timbul apabila menggunakan ReflectionFunctionAbstract
kelas untuk menganalisis fungsi dan kaedah.
Pemberhentian baharu hanya memastikan bahawa tandatangan fungsi mengikut andaian akal bahawa parameter yang diperlukan hendaklah sentiasa diisytiharkan sebelum parameter pilihan.
Fungsi harus ditulis semula untuk mengalih keluar nilai lalai parameter sebelumnya. Memandangkan fungsi tidak pernah dipanggil tanpa mengisytiharkan semua parameternya, ini tidak mempunyai kesan ke atas fungsinya.
function test_function(int $var1, int $var2) { return $var1 / $var2; }