встроенная функция PHP, как .net

я хочу написать встроенную функцию в php, как показано ниже

например :

$c = getCountry();
$b = getZones();
$a = [
'x' => function() use ($c, $b)
{
if ( isset($c[0]) )
return getZonesByCountryId($c[0]['id']);
else
return $b;
}
];

я получаю эту ошибку: «Объект класса Closure не может быть преобразован в строку» я пишу встроенную функцию в .net, как я делал это выше. Помогите мне, пожалуйста !!!

-2

Решение

Значение 'x' будет функция; сама анонимная функция будет назначена 'x', а не его возвращаемое значение. Чтобы назначить его возвращаемое значение, вам необходимо выполнить функцию:

$a = ['x' => call_user_func(function() use ($c, $b) {
if (isset($c[0])) {
return getZonesByCountryId($c[0]['id']);
} else {
return $b;
}
})];

Тем не менее, в данном конкретном случае нет абсолютно никакого смысла использовать такое сложное решение, когда все будет хорошо:

$a = ['x' => isset($c[0]) ? getZonesByCountryId($c[0]['id']) : $b];
2

Другие решения

Других решений пока нет …

По вопросам рекламы [email protected]