Я работаю с Google Adwords API в Laravel, но я довольно новый, и мне нужна помощь, чтобы понять одну вещь в строке кода, где я получил вопрос, который использовал для этого поста.
строка выглядит следующим образом:
$campaign_ids = array_filter(Arr::pluck($campaigns, 'googleId'));
Будучи частью этой функции:
public function reports(CampaignGroup $campaignGroup, string $dateFrom, string $dateTo, int $limit): array
{
$campaigns = [];
$campaigns = array_merge($campaigns, $campaignGroup->campaigns->toArray());
$campaign_ids = array_filter(Arr::pluck($campaigns, 'googleId'));
$cacheKey = sprintf('keyword_performance_report.%d.%d', $this->account->id, $limit);
$cacheTtl = DateInterval::createFromDateString($this->cacheTtl);
$definitionAdapter = new KeywordsPerformanceDefinitionAdapter($campaign_ids);
return Cache::remember($cacheKey, $cacheTtl, function () use ($definitionAdapter, $dateFrom, $dateTo, $campaign_ids, $limit) {
$definitionAdapter->applyFilters($campaign_ids, $dateFrom, $dateTo, $limit);
$definitionAdapter->getSelectorAdapter()->asSummary();
$response = $this->generate();
return $response['entries'];
});
}
Я хотел бы понять, что произойдет, если эта строка получит пустой массив, и Google получит его.Мне не удалось этого понять, и я хотел бы понять, какое исключение может быть выдвинуто здесь и что я должен сделать, чтобы избежать такой проблемы.