Symfony получить данные таблицы базы данных по entity

У меня две сущности. Категория и Eshop . Мне нужно получить все категории по eShop сущности. Код работает. Возвращаемый массив содержит табличные данные, но возвращаемый массив слишком большой, поэтому я не знаю, как извлечь то, что я хочу. Метод look. Метод выглядит следующим образом:

/**
 * @param Eshop $eshop
 * @return Category[]
 */
private function getCategoriesFromDatabaseByEshop(Eshop $eshop)
{
    return $eshop->getCategories();
}

Когда я был вдохновлен примером здесь, так что я получаю следующие выходные данные:

Код

print_r(DoctrineCommonUtilDebug::dump($this->getCategoriesFromDatabaseByEshop($eshop)));

Выход

[84]=> object(stdClass)#2799 (12) {
    ["__CLASS__"]=> string(25) "AppBundleEntityCategory"
    ["id"]=> int(85)
    ["name"]=> string(42) "/akcni-nabidky/akcni-nabidky-produkty/vina"
    ["parentCategory"]=> NULL
    ["link"]=> string(42) "/akcni-nabidky/akcni-nabidky-produkty/vina"
    ["createdAt"]=> string(8) "DateTime"
    ["lastCheckAt"]=> string(8) "DateTime"
    ["lastHttpStatusCode"]=> int(200)
    ["active"]=> bool(true)
    ["eshop"]=> string(22) "AppBundleEntityEshop"
    ["products"]=> string(8) "Array(0)"
    ["leaf"]=> bool(false)
}

Мне нужен экстракт ["name"]?

Большое спасибо за любые советы.

1 ответ

  1. Это немного неясно.

    У вас есть много способов получить свойство объекта:

    $names = [];
    foreach ($eshop->getCategories() as $category) {
       $names[] = $category->getName()
    }
    return $names
    

    или в веточке

    {% for category in eshop.categories %}
       {{ category.name }}
    {% endfor %}