Funksiýa call_user_func_array
call_user_func_array funksiýasy, parametrleri massiw görnüşinde geçirmek arkaly kolbek çagyrmaga rugsat berýär. Birinji parametr görnüşinde funksiýanyň ýa-da metoduň ady geçirilýär, ikinjide bolsa argumentleriň massiwý.
Sintaksis
call_user_func_array(callable $callback, array $args);
Mysal
Parametrleri massiw arkaly geçirip, ýönekeý funksiýany çagyrmak:
<?php
function sum($a, $b) {
return $a + $b;
}
$res = call_user_func_array('sum', [2, 3]);
echo $res;
?>
Kody ýerine ýetirmegiň netijesi:
5
Mysal
Parametrleri geçirip, klas metodyny çagyrmak:
<?php
class Calculator {
public function multiply($a, $b) {
return $a * $b;
}
}
$calc = new Calculator();
$res = call_user_func_array([$calc, 'multiply'], [4, 5]);
echo $res;
?>
Kody ýerine ýetirmegiň netijesi:
20
Mysal
Anonim funksiýa bilen ulanyş:
<?php
$func = function($a, $b, $c) {
return $a + $b + $c;
};
$res = call_user_func_array($func, [1, 2, 3]);
echo $res;
?>
Kody ýerine ýetirmegiň netijesi:
6
Şeýle-de serediň
-
call_user_funcfunksiýasyny,
ol aýratyn argumentler bilen callback-funksiýany çagyrmaga hyzmat edýär -
function_existsfunksiýasyny,
ol funksiýanyň ýaýbarlygyny barlamaga hyzmat edýär