Получить имена переменных у функции и их порядок. С помощью call_kv мы можем вызвать другую функцию не заботясь о порядке аргументов
<?php
function call_kv($fn, $_args){
$t = new ReflectionFunction($fn);
$args = array();
foreach($t->getParameters() as $v)
$args[] = $_args[$v->name];
return call_user_func_array($fn, $args);
}
function send($to, $from){
echo "Sending $from -> $to";
}
call_kv('send', array('from'=>'amazon', 'to'=>'me'));
Sending amazon -> me