call_user_method_array

(PHP 4 >= 4.0.5, PHP 5)

call_user_method_array — Вызываем метод объекта с массивом параметров [устаревшее]

Описание

mixed call_user_method_array ( string $method_name , object $obj [, array $paramarr ] )
Внимание

Функция call_user_method_array() устарела с выходом 4.1.0: используйте функцию call_user_func_array() с array(&$obj, "method_name") в качестве параметра имени функции.

Вызывает метод method_name объекта obj , с параметрами содержащимися в массиве paramarr .

См. также: call_user_func_array() и call_user_func().

Коментарии

You don't have to write a new function, <?php call_user_func_array(array($obj$method_name), $params); ?> works pretty fine! (to my mind, 'eval' fucntion should be avoided almost all the time)
2010-07-15 04:33:37
http://php5.kiev.ua/manual/ru/function.call-user-method-array.html
<?php

class a{

    function 
b($a,$b,$c){

        echo 
$a." ".$b." ".$c;
   
    }
   
    function 
c(Array $a, Array $b){
   
       
print_r($a);
       
        echo 
"<br />";
       
       
print_r($b);
   
    }
   
    function 
cuf(Array $a, Array $b){
   
       
print_r($a);
       
        echo 
"<br />";
       
       
print_r($b);
   
    }

}

$a = new a;

// ### Just String Params ###

$array = array("Musa ATALAY",":","Software Developer");

$str NULL;

foreach(
$array AS $v){
    if(
is_string($v)){
       
$str.="'".$v."',";
    }else{
       
$str.=$v;
    }
}

$str rtrim($str,",");

$run "echo \$a->b(".$str.");";

echo 
"<br />";

eval(
$run);

$str NULL;

/* 
OUTPUT : 

Musa ATALAY : Software Developer 
*/

// ### With Array Params ###

$array = array(array("Musa ATALAY",":","Software Developer"),array("Musa ATALAY",":","Software Developer"));

foreach(
$array AS $i => $v){
    if(
is_string($v)){
       
$str.="'".$v."',";
    }else{
       
$str.="\$array[".$i."],";
    }
}

$str rtrim($str,",");

$run "echo \$a->c(".$str.");";

echo 
"<br />";

eval(
$run);

/*
 OUTPUT : 

Musa ATALAY : Software Developer

Musa ATALAY : Software Developer
*/

?>
2014-07-15 10:57:57
http://php5.kiev.ua/manual/ru/function.call-user-method-array.html

    Поддержать сайт на родительском проекте КГБ