@Albert1991

Как в PHP вызвать функцию, передав ее аргументом в другую функцию?

Здравствуйте. Вопрос в следующем:

Как можно передать функцию func1 в аргумент функции func2, чтобы функция func1 вызывалась в теле функции func2. Функции находятся в разных файлах?

Должно быть что-то типа (но этот вариант выдает ошибку 'Call to undefined function: \func1\func1'):
namespace func1;
$func1 = function()
{
//some code
}

namespace func2;
function func2($func)
{
    $func();
}

func2(\func1\func1);


func2 в моем случае является функцией, которая пользуется другими несколькими функциями, поэтому мне нужно как-то передавать в функцию func2, какую конкретно функцию ей использовать (в примере это функция func1). При этом вот так не подходит.
function func1()
{
//some code
}

function func2($func)
{
    $func();
}

func2(func1());

Потому что я использую func1, которая выдает рандомный результат, несколько раз, а в таком случае func1 сгенерирует 1 раз рандомное значение и все, а мне нужно несколько раз запускать эту func1 в func2.
  • Вопрос задан
  • 945 просмотров
Решения вопроса 1
SilenceOfWinter
@SilenceOfWinter
та еще зажигалка...
$func1 - переменная, поэтому так \func1\func1 её передать нельзя, я вообще не припоминаю чтобы можно было импортировать переменные из другого пространства имен
Ответ написан
Пригласить эксперта
Ваш ответ на вопрос

Войдите, чтобы написать ответ

Войти через центр авторизации
Похожие вопросы