У меня проблема с кодом ниже.Я не понимаю, как это работает.Я родом из Java, и эта функция мне кажется странной.В первом параметре он возвращает результат, а во втором параметре возвращает список.
private static function getEventsOfTheCampaigns($campaigns)
{
$events = Utility::arrayToCollection(array_map(function ($id) {
return Events::find($id);
}, array_unique(Utility::getIndexFromCollection($campaigns, 'event_id'))));
return $events;
}
Определение функций ниже
public static function arrayToCollection(array $list){
$result = collect([]);
if( !is_null($list) ):
if(is_array( $list ) and count($list) > 0):
foreach($list as $item):
$result->push($item);
endforeach;
endif;
endif;
return $result;
}
Может кто-нибудь объяснить мне, как это работает?спасибо.