Czy jest jakaś szansa, że mogę wydedukować informacje o typie parametrów zamknięcia PHP? Rozważmy następujący przykład:Deducing Parametry zamknięcia PHP
<?php
$foo = function(array $args)
{
echo $args['a'] . ' ' . $args['b'];
};
$bar = function($a, $b)
{
echo $a . ' ' . $b;
};
$closure = /* some condition */ $foo : $bar;
if(/* $closure accepts array? */)
{
call_user_func($closure, ['a' => 5, 'b' => 10]);
}
else
{
call_user_func($closure, 5, 10);
}
?>
Chcę zostawić pewną swobodę dla użytkownika tak, on lub ona mogła zdecydować, który sposób jest lepszy do definiowania zamknięcia, które zostaną zarejestrowane w moim dyspozytora - będzie akceptować parametrów w tablicy asocjacyjnej lub bezpośrednio jako parametry zamknięcia. Tak więc, dyspozytor musi wydedukować parametry przekazanego zamknięcia, aby określić, w jaki sposób powinien wywołać to zamknięcie. Jakieś pomysły?
Właśnie tego szukałem! Dziękuję, nie wiedziałem, że PHP ma odbicie :) –
@ nyan-cat Pozdrawiam. Miło, że mogłem pomóc. – BlitZ