note 89837 added to function.call-user-method-array
| From: | brudinie at googlemail dot com | Date: | Wed, 25 Mar 2009 15:23:15 +0000 |
| Subject: | note 89837 added to function.call-user-method-array | ||
| Groups: | php.notes | ||
| Request: | Send a blank email to php-notes+get-152426@lists.php.net to get a copy of this message | ||
<?php
/**
* @param string $func - method name
* @param object $obj - object to call method on
* @param boolean|array $params - array of parameters
*/
function call_object_method_array($func, $obj, $params=false){
if (!method_exists($obj,$func)){
// object doesn't have function, return null
return (null);
}
// no params so just return function
if (!$params){
return ($obj->$func());
}
// build eval string to execute function with parameters
$pstr='';
$p=0;
foreach ($params as $param){
$pstr.=$p>0 ? ', ' : '';
$pstr.='$params['.$p.']';
$p++;
}
$evalstr='$retval=$obj->'.$func.'('.$pstr.');';
$evalok=eval($evalstr);
// if eval worked ok, return value returned by function
if ($evalok){
return ($retval);
} else {
return (null);
}
return (null);
}
?>
----
Server IP: 92.48.74.199
Probable Submitter: 89.207.208.6
----
Manual Page -- http://www.php.net/manual/en/function.call-user-method-array.php
Edit -- https://master.php.net/note/edit/89837
Del: integrated -- https://master.php.net/note/delete/89837/integrated
Del: useless -- https://master.php.net/note/delete/89837/useless
Del: bad code -- https://master.php.net/note/delete/89837/bad+code
Del: spam -- https://master.php.net/note/delete/89837/spam
Del: non-english -- https://master.php.net/note/delete/89837/non-english
Del: in docs -- https://master.php.net/note/delete/89837/in+docs
Del: other reasons-- https://master.php.net/note/delete/89837
Reject -- https://master.php.net/note/reject/89837
Search -- https://master.php.net/manage/user-notes.php