Meluluskan Bilangan Pembolehubah Argumen kepada Fungsi PHP
Soalan: Bagaimanakah saya boleh menghantar bilangan argumen pembolehubah secara dinamik ke fungsi PHP?
Jawapan: Pertimbangkan untuk menggunakan fungsi call_user_func_array, yang membolehkan anda menghantar tatasusunan argumen kepada fungsi. Jika bilangan argumen yang perlu anda hantar bergantung pada panjang tatasusunan, anda boleh menukar argumen kepada tatasusunan dan menggunakan tatasusunan itu sebagai parameter kedua call_user_func_array.
Sebagai contoh, katakan anda mempunyai perkara berikut fungsi:
function test() { var_dump(func_num_args()); var_dump(func_get_args()); }
Anda boleh membungkus parameter anda ke dalam tatasusunan seperti berikut:
$params = array( 10, 'glop', 'test', );
Dan kemudian panggil fungsi menggunakan:
call_user_func_array('test', $params);
Ini akan menghasilkan output yang berikut:
int 3 array 0 => int 10 1 => string 'glop' (length=4) 2 => string 'test' (length=4)
Pada asasnya, elemen tatasusunan yang diluluskan akan diterima oleh fungsi sebagai parameter yang berbeza, memberikan kesan yang sama seolah-olah fungsi itu telah dipanggil terus dengan argumen individu.
Atas ialah kandungan terperinci Bagaimana untuk Meluluskan Bilangan Pembolehubah Argumen kepada Fungsi PHP?. Untuk maklumat lanjut, sila ikut artikel berkaitan lain di laman web China PHP!