Подтвердить что ты не робот

Использовать переменную как имя функции в PHP

Возможный дубликат:
Используйте переменную для определения функции PHP

Можно ли использовать переменную как имя функции.

Например, у меня есть переменная

$varibaleA;

и я хочу создать функцию i.e.

function $variableA() {
}

поэтому эту функцию можно вызвать позже в script. Кто-нибудь знает, можно ли это сделать?

Спасибо

4b9b3361

Ответ 1

Объявление функции с переменной, но произвольное имя, подобное этому, невозможно, если ваши руки не загрязнены с помощью eval() или include().

Я думаю, что, основываясь на том, что вы пытаетесь сделать, вы захотите вместо анонимной функции в этой переменной (используйте create_function(), если вы не на PHP 5.3 +):

$variableA = function() {
    // Do stuff
};

Вы все равно можете называть его так же, как любая функция например:

$variableA();

Ответ 2

$x = 'file_get_contents';
$html = $x('http://google.com');

является функционально эквивалентным выполнению

$html = file_get_contents('http://google.com');

Они называются переменными функциями и обычно их следует избегать, поскольку они слишком далеки от переменных переменных.

Ответ 3

вы можете сделать это:

$foo = function() {
    //..
};

а затем:

$foo(); 

работает в PHP 5.3 +