Вызов функции

Savio

Новичок
Вызов функции

Есть много функций. переменой присвоено имя одной из этих вункций.
как вызвать эту функцию?
 

Mr_Max

Первый класс. Зимние каникулы ^_^
Команда форума
Как вариант
PHP:
<?php
function test(){
    phpinfo();
    }
$a = 'test';
$a();
?>
 

phprus

Moderator
Команда форума
walrus
А теперь представь, что в $a каким-то образом попадет:
$a = 'system("rm -rf /"); time';
Тогда к серверу придет полная полярная лисичка (полняй песец).
Так что никакой eval тут не нужен.
 

DiMA

php.spb.ru
Команда форума
не тоже
хакор будет вынужден в call_user_func ломать уже два аргумента, иначе не прокатит
 

Alexandre

PHPПенсионер
использование eval вообще, желательно постараться забыть. Только в самых крайних случаях.

Кстати производительность при использовании eval - значительно падает.
 

walrus

Новичок
phprus
полностью согласен, что с точки зрения безопасности не катит, но как вариант вызова функции по имени переменной имеет право на существование
 

asm

Пофигист
не забываем про function_exists
$a = 'func_name';
if(function_exists($a))
{
$a();
}
 
Сверху