Dalam PHP, kita boleh mencapai bilangan pembolehubah parameter lulus dengan menambah tiga titik (...) di hadapan parameter kaedah. Kaedah ini juga dipanggil "senarai parameter pembolehubah" atau "bilangan parameter tidak tentu".
Mari kita lihat penggunaan dan butiran khusus.
Dalam PHP, apabila kita mengisytiharkan kaedah, kita boleh menambah tiga titik di hadapan parameter kaedah untuk menunjukkan bahawa parameter berubah, contohnya:
function myFunc(...$args) { // 执行代码 }
Dalam kod ini, tiga titik di hadapan parameter $args
menunjukkan bahawa ia ialah senarai parameter panjang berubah-ubah. Ini bermakna apabila memanggil kaedah myFunc()
, kita boleh menghantar sebarang bilangan parameter dan parameter ini akan diletakkan dalam tatasusunan $args
.
Apabila menggunakan parameter panjang berubah-ubah, kita boleh memanggilnya dengan cara berikut:
myFunc(1, 2, 3, 4);
Dalam contoh ini, kami menghantarnya ke myFunc()
Di sana ialah 4 parameter, yang akan diletakkan dalam tatasusunan $args
.
Perlu diingat bahawa apabila menggunakan parameter berubah, kita mesti memastikan bahawa parameter ini adalah daripada jenis yang sama, jika tidak ralat mungkin berlaku.
Senarai parameter pembolehubah digunakan secara meluas dalam pembangunan sebenar, terutamanya dalam pembangunan perpustakaan atau rangka kerja fungsi.
Andaikan kita perlu menulis fungsi yang boleh mengekstrak pasangan nilai kunci yang ditentukan daripada berbilang tatasusunan Kod mungkin kelihatan seperti ini:
function extractByKey($key, ...$arrays) { $result = array(); foreach ($arrays as $array) { if (array_key_exists($key, $array)) { $result[] = $array[$key]; } } return $result; }
Dalam contoh ini, kita mula-mula A pembolehubah ditakrifkan untuk mewakili nama kunci yang perlu diekstrak. Kemudian kami menggunakan senarai hujah variadic untuk lulus tatasusunan yang perlu diekstrak. $key
kosong untuk mewakili hasil ekstrak akhir. Kemudian kami melelang melalui semua tatasusunan yang diluluskan dalam parameter pembolehubah untuk menentukan sama ada $result
wujud dalam tatasusunan. Jika ia wujud, kami menambah nilai yang sepadan dengan $key
dalam tatasusunan kepada tatasusunan $key
. $result
, yang mengandungi pasangan nilai kunci yang ditentukan yang diekstrak daripada semua tatasusunan. $result
Atas ialah kandungan terperinci PHP memanggil parameter kaedah di hadapan.... Untuk maklumat lanjut, sila ikut artikel berkaitan lain di laman web China PHP!