Variable Anzahl von Argumenten an PHP-Funktionen übergeben
Frage: Wie kann ich eine variable Anzahl von Argumenten dynamisch übergeben? zu einer PHP-Funktion?
Antwort: Erwägen Sie die Verwendung von call_user_func_array-Funktion, mit der Sie ein Array von Argumenten an eine Funktion übergeben können. Wenn die Anzahl der Argumente, die Sie übergeben müssen, von der Länge eines Arrays abhängt, können Sie die Argumente in ein Array konvertieren und dieses Array als zweiten Parameter von call_user_func_array verwenden.
Angenommen, Sie haben Folgendes Funktion:
function test() { var_dump(func_num_args()); var_dump(func_get_args()); }
Sie können Ihre Parameter wie folgt in ein Array packen:
$params = array( 10, 'glop', 'test', );
Und dann die Funktion aufrufen using:
call_user_func_array('test', $params);
Dadurch wird Folgendes ausgegeben:
int 3 array 0 => int 10 1 => string 'glop' (length=4) 2 => string 'test' (length=4)
Im Wesentlichen werden die Elemente des übergebenen Arrays von der Funktion als unterschiedliche Parameter empfangen, was den gleichen Effekt erzielt, als ob die Funktion wurde direkt mit den einzelnen Argumenten aufgerufen.
Das obige ist der detaillierte Inhalt vonWie übergebe ich eine variable Anzahl von Argumenten an PHP-Funktionen?. Für weitere Informationen folgen Sie bitte anderen verwandten Artikeln auf der PHP chinesischen Website!