Обработка результата Symfony / Doctrine, который является массивом Object

0

Я использовал следующее в своем действии Controller

$data = $this->getDoctrine()->getRepository('MyBundle:links')->findAll();

теперь хранятся данные и массив объектов класса "Ссылки", которые следующие:

Array
(
    [0] => MyBundle\Entity\links Object
        (
            [id:MyBundle\Entity\links:private] => 2
            [urls:MyCheckerBundle\Entity\links:private] => http://localhost/1.php
        )    
    [1] => MyBundle\Entity\links Object
        (
            [id:MyBundle\Entity\links:private] => 1
            [urls:MyCheckerBundle\Entity\links:private] => http://localhost/2.php
        ))

Как обработать этот массив объектов, если я хочу получить доступ к id и URL-адресам, чтобы я мог отображать на своей странице?

  • 0
    Показать класс сущности.
Теги:
doctrine2

2 ответа

3
Лучший ответ

Массив - это просто массив, содержащий ваши сущности.

Итак, что вы можете сделать, так это:

foreach ($data as $object) {
        // ID variable
        var id = $object->getId()
        var urls = $object->getUrls() // Not sure if the method is called.

С чем это связано. вы можете просто использовать методы, которые вы определили в своих объектах, для доступа к свойствам этих объектов.

  • 0
    Вы уверены, что результатом является объект вашего класса Entity, потому что это кажется проблемой. Не могли бы вы просто вывести результат этого запроса и вставить его сюда?
  • 0
    Это был массив объектов. Я сделал var_dump и узнал. Задача решена. Спасибо за предыдущий ответ
1

вероятно, в ветке:

{% for object in data %}

{{ object.id }}
{{ object.url }}

{% endfor %}
  • 0
    Я хочу обработать его специально в php, а затем обработать обработанные данные веткой. Обработка данных из базы данных является актуальной логикой. Для которой я хочу получить доступ к «ссылкам» индивидуально
  • 0
    ок, ответ мошикаро должен быть хорош для тебя

Ещё вопросы

Сообщество Overcoder
Наверх
Меню