Роман Каминин

решил но подскажите зачем мы здесь используем функцию flatten? я использовал её в решении и я так понимаю это перестраховка если в качестве аргумента придёт многомерный массив.Из файла с тестами ясно что он к нам придёт а вот если бы приходили простые массивы уместно ли всё время использовать эту функцию?

3 0

Можете показать решение?

0

` function ages($collection){

return flatten(group($collection,function($user){

return  getAge($user);

}));

} `

0

Во-первых, на вход функции придёт обычный массив: тесты будут запускаться для каждого значения из массива, возвращаемого dataProvider. Во-вторых, вот код функции group. Как можно заметить, он всегда возвращает ассоциативный массив, где ключами являются значения, полученные применением переданной callback-функции к элементу, т.е. к $user. Поскольку нам на выходе ассоциативный массив не нужен, мы применяем flatten.

0

Похожие вопросы

Sergey Erofeev 01 ноября 2017 →

Через командную строку не работает. // removed PHP Fatal error: Call to undefined function App\Solution\Us...

Владимир Тарановский 23 августа 2016 →

В ридми: Получить возраст пользователя - getAge(user) Вроде должно быть getAge($user)

Ярослав Подгорнов 24 июня 2016 →

Пробовал использовать пример из задания $u1 = User\make(4); $u2 = User\make(3); $u3 = User\make(5); $u4 = ...

Altay Sabyrbay 22 мая 2016 →

function ages ($array) { $groupedAges = group($array, function ($user) { return $user->getAge()...

Rustam Shirinov 01 апреля 2016 →

Что значит знак ->? В каких-то курсах до этого он объяснялся?

Мы учим программированию с нуля до стажировки и работы. Попробуйте наш бесплатный курс «Введение в программирование» или полные программы обучения по Node, PHP, Python и Java.

Хекслет

Подробнее о том, почему наше обучение работает →