Метод get класса ArrayCollection
Метод get класса ArrayCollection возвращает
элемент коллекции по указанному ключу. Первым
параметром передаётся ключ элемента. Если ключ
не существует, метод выбрасывает исключение
InvalidArgumentException.
Синтаксис
$res = $collection->get($key);
Пример
Давайте создадим коллекцию и получим из неё
элемент по ключу 1:
<?php
namespace App\Controller;
use Symfony\Bundle\FrameworkBundle\Controller\AbstractController;
use Symfony\Component\HttpFoundation\Response;
use Doctrine\Common\Collections\ArrayCollection;
class ArticleController extends AbstractController
{
public function index(): Response
{
$collection = new ArrayCollection(['a', 'b', 'c', 'd', 'e']);
$res = $collection->get(1);
return new Response($res);
}
}
?>
Результат выполнения кода:
"b"
Пример
Давайте получим элемент по строковому ключу:
<?php
namespace App\Controller;
use Symfony\Bundle\FrameworkBundle\Controller\AbstractController;
use Symfony\Component\HttpFoundation\Response;
use Doctrine\Common\Collections\ArrayCollection;
class ArticleController extends AbstractController
{
public function index(): Response
{
$collection = new ArrayCollection([
'user' => 'hello',
'article' => 'abcde'
]);
$res = $collection->get('article');
return new Response($res);
}
}
?>
Результат выполнения кода:
"abcde"
Пример
Давайте попробуем получить элемент по несуществующему ключу:
<?php
namespace App\Controller;
use Symfony\Bundle\FrameworkBundle\Controller\AbstractController;
use Symfony\Component\HttpFoundation\Response;
use Doctrine\Common\Collections\ArrayCollection;
class ArticleController extends AbstractController
{
public function index(): Response
{
$collection = new ArrayCollection([1, 2, 3, 4, 5]);
$res = $collection->get(10);
return new Response($res);
}
}
?>
Результат выполнения кода:
InvalidArgumentException
Смотрите также
-
класс
ArrayCollection,
который представляет собой коллекцию элементов -
метод
set,
который устанавливает элемент по ключу -
метод
containsKey,
который проверяет наличие ключа в коллекции -
метод
toArray,
который преобразует коллекцию в массив