Разбор объекта данных Symfony

1

Привет, ребята. У меня проблемы с анализом данных, которые я получаю из объекта данных Doctrine.

Это мой запрос:

    $dateNeeded = date('Y-m-d', strtotime("-14 day"));
    $result = $this->em->getRepository('FYPCartBundle:PurchasedItems')->createQueryBuilder('pi')
        ->select('pi', 'o','cd','u','pv')
        //SELECT purchased_items.previewurl, CustomerDesign.designData, CustomerDesign.quantity, fos_user.email, fos_user.firstName, fos_user.lastName, orders.orderid, ProductVariant.displayName, purchased_items.ordernumber
        ->innerJoin('pi.orders', 'o')
        ->innerJoin('pi.customerDesign', 'cd')
        ->innerJoin('cd.user', 'u')
        ->innerJoin('pi.productVariantObj', 'pv')
        ->where('o.dateneeded = :dateneeded')
        ->setParameter( 'dateneeded', $dateNeeded )
        ->getQuery()
        ->setMaxResults(30) 
        ->execute();

Вот мой цикл для анализа данных:

  foreach ($result as $order) {
       echo $order->email;
  }

"Echo $order-> email;" оператор ничего не возвращает. Я проверил sql с phpmyadmin и вернул действительные данные.

Как мне получить доступ к этой части данных?

Спасибо за любую помощь, которую вы можете дать.

  • 0
    Вы не выбираете ни одного поля электронной почты ... -> выберите ('pi', 'o', 'cd', 'u', 'pv')
  • 0
    Поле электронной почты приходит от пользователей (и)
Показать ещё 2 комментария
Теги:
oop
doctrine

1 ответ

0

Заказ не имеет электронной почты, но имеет пользователя. Также попробуйте не получать поля напрямую, используйте методы getter (а не email а getEmail())

foreach ($result as $order) {
   echo $order->getUser()->getEmail();
}

Ещё вопросы

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