Parameter pilihan $yyy mendahului parameter yang diperlukan $xxx
P粉236743689
P粉236743689 2023-10-18 12:51:21
0
2
685

rreeee

Sejak menaik taraf kepada PHP 8.0, ralat ini dilemparkan apabila menjalankan kod berikut:

Deprecated: Required parameter $xxx follows optional parameter $yyy in...

Ini berfungsi tanpa masalah dalam versi PHP yang lalu.

P粉236743689
P粉236743689

membalas semua(2)
P粉021553460

Parameter yang diperlukan tanpa nilai lalai harus didahulukan.

function test_function(int $xxx, int $yyy = 2)
{
    return $xxx * $yyy;
}
P粉427877676

Cara pengisytiharan fungsiini telah ditamatkan dalam PHP 8.0. Tidak masuk akal untuk menulis fungsi seperti ini kerana semua hujah (sehingga yang terakhir, yang diperlukan) perlu dinyatakan semasa memanggil fungsi tersebut. Ia juga menggunakan kelas Menyebabkan kekeliruan ::getNumberOfRequiredParameters" rel="noreferrer">ReflectionFunctionAbstract untuk menghuraikan fungsi dan kaedah.

Pemberhentian baharu hanya memastikan bahawa tandatangan fungsi mengikut andaian akal bahawa parameter yang diperlukan yang mesti ada hendaklah sentiasa diisytiharkan sebelum parameter pilihan.

Fungsi ini harus ditulis semula untuk mengalih keluar nilai lalai untuk parameter terdahulu. Oleh kerana fungsi itu tidak boleh dipanggil tanpa mengisytiharkan semua hujah, ini sepatutnya tidak mempunyai kesan ke atas fungsinya.

function test_function(int $var1, int $var2) {
    return $var1 / $var2;
}
Muat turun terkini
Lagi>
kesan web
Kod sumber laman web
Bahan laman web
Templat hujung hadapan
Tentang kita Penafian Sitemap
Laman web PHP Cina:Latihan PHP dalam talian kebajikan awam,Bantu pelajar PHP berkembang dengan cepat!