Возможный дубликат:
Используйте переменную для определения функции PHP
Есть ли способ использования переменной в качестве имени функции.
Например, у меня есть переменная
$varibaleA;
и я хочу создать функцию, т.е.
function $variableA() { }
поэтому эту функцию можно вызвать позже в скрипте. Кто-нибудь знает, можно ли это сделать?
благодаря
Объявление функции с переменной, но произвольное имя, подобное этому, невозможно, не загрязняя руки с помощью eval()
или include()
.
Я думаю, основываясь на том, что вы пытаетесь сделать, вам захочется вместо этого сохранить анонимную функцию в этой переменной (используйте create_function()
если вы не используете PHP 5.3+):
$variableA = function() { // Do stuff };
Вы все равно можете называть его так же, как любая функция переменной , например:
$variableA();
$x = 'file_get_contents'; $html = $x('http://google.com');
функционально эквивалентно выполнению
$html = file_get_contents('http://google.com');
Они называются переменными функциями и обычно их следует избегать, поскольку они слишком далеки от переменных переменных.
вы можете сделать это:
$foo = function() { //.. };
а потом:
$foo();
работает в PHP 5.3+