यदि आपके पास किसी सरणी में आपके तर्क हैं, तो आप call_user_func_array
फ़ंक्शन द्वारा रुचि ले सकते हैं ।
यदि आपके द्वारा पास किए जाने वाले तर्कों की संख्या एक सरणी की लंबाई पर निर्भर करती है, तो इसका मतलब है कि आप उन्हें स्वयं एक सरणी में पैक कर सकते हैं - और दूसरे पैरामीटर के लिए उस एक का उपयोग करें call_user_func_array
।
फिर आपके द्वारा पास किए गए सरणी के तत्व आपके कार्य द्वारा अलग-अलग मापदंडों के रूप में प्राप्त किए जाएंगे।
उदाहरण के लिए, यदि आपके पास यह फ़ंक्शन है:
function test() {
var_dump(func_num_args());
var_dump(func_get_args());
}
आप अपने मापदंडों को एक सरणी में पैक कर सकते हैं, जैसे:
$params = array(
10,
'glop',
'test',
);
और, फिर, फ़ंक्शन को कॉल करें:
call_user_func_array('test', $params);
यह कोड आउटपुट होगा:
int 3
array
0 => int 10
1 => string 'glop' (length=4)
2 => string 'test' (length=4)
यानी, 3 पैरामीटर; जैसे iof फ़ंक्शन को इस तरह कहा जाता था:
test(10, 'glop', 'test');