JastaFly
@JastaFly

Результат работы функции в качестве аргумента?

Доброго всем времени суток! Где то слышал что в PHP не рекомендуется в качестве аргумента передавать результат работы функции и вот такой код:
array_keys(getAllUsers());
Лучше заменить на такой:
$users = getAllUsers();
array_keys($users);

Так ли это?!???
  • Вопрос задан
  • 48 просмотров
Решения вопроса 1
@LionG
Нет. Это рофл.

Хотя зависит от того принимает ли принимающая функция все варианты ответов (типов) вызываемой. Например если вызываемая getAllUsers вернет false (boolean) может случиться фаталка тк array_keys принимает только (array) массив. Но в таком случае можно сделать такую проверку:

array_keys(getAllUsers() ?: []);//если положительный ответ то его иначе (по умолчанию) пустой массив


Либо если функция ваша можно внутри getAllUsers всегда возвращать массив и в случае если пользователей нет то пустой.
Ответ написан
Пригласить эксперта
Ваш ответ на вопрос

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

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