Autocomplete.php 758 B

12345678910111213141516171819202122232425262728293031323334353637
  1. <?php
  2. /**
  3. * Copyright © Magento, Inc. All rights reserved.
  4. * See COPYING.txt for license details.
  5. */
  6. namespace Magento\Search\Model;
  7. class Autocomplete implements AutocompleteInterface
  8. {
  9. /**
  10. * @var Autocomplete\DataProviderInterface[]
  11. */
  12. private $dataProviders;
  13. /**
  14. * @param array $dataProviders
  15. */
  16. public function __construct(
  17. array $dataProviders
  18. ) {
  19. $this->dataProviders = $dataProviders;
  20. ksort($this->dataProviders);
  21. }
  22. /**
  23. * {@inheritdoc}
  24. */
  25. public function getItems()
  26. {
  27. $data = [];
  28. foreach ($this->dataProviders as $dataProvider) {
  29. $data = array_merge($data, $dataProvider->getItems());
  30. }
  31. return $data;
  32. }
  33. }