<html><body>
<?php
function privet($a,$b){
echo $a,' ',$b;
}
call_user_func('privet',5,8);
?>
</body></html>
тоже самое можно написать и так без неё,даже короче выходит:
<html><body>
<?php
function privet($a,$b){
echo $a,' ',$b;
}
privet(5,8);
?>
</body></html>
Зачем тогда она?
Спустя 15 минут, 49 секунд (3.04.2012 - 20:26) Stasonix написал(а):
наверно чтобы было, я что-то такого ни разу на практике не видел, но: function.call-user-func.php
Спустя 13 минут, 13 секунд (3.04.2012 - 20:40) T1grOK написал(а):
function myfunction()
{
}
$function = 'myfunction';
call_user_func($function);
Спустя 35 минут, 18 секунд (3.04.2012 - 21:15) I++ написал(а):
Еще вот так можно:
function myfunction($param)
{
return $param;
}
$function = 'myfunction';
echo $function('test');
Спустя 9 минут, 29 секунд (3.04.2012 - 21:24) Stasonix написал(а):
а есть какое-то внятное объяснение зачем оно вообще нужно, мне просто самому интересно, вот вы тут код хорошо выкладываете, да и в мануале не плохо расписано, но в итоге - "словами" (объясните) на практике, в каких случаях надо использовать именно такой вариант?
Спустя 16 минут, 15 секунд (3.04.2012 - 21:41) glock18 написал(а):
Цитата (Stasonix @ 3.04.2012 - 18:24) |
а есть какое-то внятное объяснение зачем оно вообще нужно, мне просто самому интересно, вот вы тут код хорошо выкладываете, да и в мануале не плохо расписано, но в итоге - "словами" (объясните) на практике, в каких случаях надо использовать именно такой вариант? |
это единственный вариант использования статических методов класса, когда имя класса заранее неизвестно, в php < 5.3
Спустя 1 минута, 22 секунды (3.04.2012 - 21:42) glock18 написал(а):
плюс есть еще call_user_func_array, которой удобнее передавать параметры. Тоже в случае если обработчик заранее не известен, это может оказаться единственной опцией
Спустя 4 минуты, 24 секунды (3.04.2012 - 21:46) I++ написал(а):
Ну еще такой подход можно использовать в создании колбэков.
Есть у тебя класс который работает в цикле с сокетами, а тебе нужно при получении инфы вызвать внешнюю функцию, которая что либо поделает, а потом обратно вернется в класс.
вот пример: http://phpforum.ru/index.php?showtopic=54456
Есть у тебя класс который работает в цикле с сокетами, а тебе нужно при получении инфы вызвать внешнюю функцию, которая что либо поделает, а потом обратно вернется в класс.
вот пример: http://phpforum.ru/index.php?showtopic=54456
Спустя 5 минут, 46 секунд (3.04.2012 - 21:52) glock18 написал(а):
Цитата (I++ @ 3.04.2012 - 18:46) |
Ну еще такой подход можно использовать в создании колбэков. Есть у тебя класс который работает в цикле с сокетами, а тебе нужно при получении инфы вызвать внешнюю функцию, которая что либо поделает, а потом обратно вернется в класс. вот пример: http://phpforum.ru/index.php?showtopic=54456 |
че-то я там не вижу правда call_user_func
Спустя 20 минут, 56 секунд (3.04.2012 - 22:13) I++ написал(а):
$this->options['func_event_handler']('>BadNick', $this);
Да тоже самое по сути.
Да тоже самое по сути.