UPD :pastebinコードが詰まっています。これがこのヘルパーメソッドです( $ object-> __ named( 'methodNameHere'、array( 'arg3' => 'three'、 'arg1' => 'one'))の形式の呼び出し)
/**
* Pass method arguments by name
*
* @param string $method
* @param array $args
* @return mixed
*/
public function __named($method, array $args = array())
{
$reflection = new ReflectionMethod($ this , $method);
$pass = array();
foreach ($reflection->getParameters() as $param)
{
/* @var $param ReflectionParameter */
if (isset($args[$param->getName()]))
{
$pass[] = $args[$param->getName()];
}
else
{
$pass[] = $param->getDefaultValue();
}
}
return $reflection->invokeArgs($ this , $pass);
}
* This source code was highlighted with Source Code Highlighter .