getByIds() public method

Returns the medias with the given ids in the specified order.
public getByIds ( array $ids, string $locale ) : Media[]
$ids array
$locale string
return Sulu\Bundle\MediaBundle\Api\Media[]
Example #1
0
 /**
  * resolves media id or object.
  *
  * @param int[]|MediaEntity[] $medias ids to resolve
  * @param string $locale
  *z
  *
  * @return MediaApi
  */
 public function resolveMediasFunction($medias, $locale)
 {
     if (count($medias) === 0) {
         return [];
     }
     $ids = [];
     $entities = [];
     $entitiesIndex = [];
     for ($i = 0; $i < count($medias); ++$i) {
         $media = $medias[$i];
         if (is_object($media)) {
             $entities[$i] = $this->resolveMediaObject($media, $locale);
         } else {
             $ids[] = $media;
             $entitiesIndex[$media] = $i;
         }
     }
     if (count($ids) > 0) {
         foreach ($this->mediaManager->getByIds($ids, $locale) as $media) {
             $entities[$entitiesIndex[$media->getId()]] = $media;
         }
     }
     ksort($entities);
     return array_values($entities);
 }
 /**
  * @param string $locale
  *
  * @return Media[]
  */
 private function loadData($locale)
 {
     if (!empty($this->ids)) {
         return $this->mediaManager->getByIds($this->ids, $locale);
     } else {
         return [];
     }
 }