Witaj Gościu! ( Zaloguj | Rejestruj )

Forum PHP.pl

 
Reply to this topicStart new topic
> [SF][SF2][Symfony] createQueryBuilder, Dlaczego zwraca taką tablicę?
damianooo
post
Post #1





Grupa: Zarejestrowani
Postów: 496
Pomógł: 2
Dołączył: 15.07.2011
Skąd: Katowice

Ostrzeżenie: (0%)
-----


W RepositoryClass robię następujące pobranie rekordu:

  1. public function getMatchday(){
  2. $today = new \DateTime('now');
  3. $qb = $this->createQueryBuilder('m');
  4. $qb->select(
  5. 'm.name AS name'
  6. ,'m.dateFrom AS dateFrom'
  7. ,'m.dateTo AS dateTo')
  8. ->where('(m.dateFrom < :today) and (m.dateTo > :today)')
  9. ->setParameter('today', $today->format('Y-m-d H:i:s'))
  10. ;
  11.  
  12. $result = $qb->getQuery()->getResult();
  13. // exit(\Doctrine\Common\Util\Debug::dump($result));
  14.  
  15. return $result;
  16. }


W wyniku dostaję taką tablicę:

  1. array(1) {
  2. [0]=>
  3. array(3) {
  4. ["name"]=>
  5. string(9) "Kolejka 5"
  6. ["dateFrom"]=>
  7. string(8) "DateTime"
  8. ["dateTo"]=>
  9. string(8) "DateTime"
  10. }
  11. }
  12. array(1) {
  13. [0]=>
  14. array(3) {
  15. ["name"]=>
  16. string(9) "Kolejka 5"
  17. ["dateFrom"]=>
  18. string(8) "DateTime"
  19. ["dateTo"]=>
  20. string(8) "DateTime"
  21. }
  22. }



Dlaczego otrzymuję dwa dokładnie te same rekordy ?




ok wiem co było źle ... pobierałem tablicę zamiast pojedynczy rekord ... a więc poprawnie powinno być tak:

  1. $result = $qb->getQuery()->getSingleResult();


Jeszcze tylko pytanie dlaczego nie pobiera mi daty ... w Twig mam błąd:
  1. ("Catchable Fatal Error: Object of class DateTime could not be converted to string")


ok problem z datą też rozwiązany ... wystarczyło po prostu zastosować odpowiedni filtr w TWIG:

  1. {{ matchday.dateFrom|date('d-m-Y') }} {{ matchday.dateTo|date('d-m-Y') }}




Temat do zamknięcia

Ten post edytował damianooo 10.03.2017, 22:56:35
Go to the top of the page
+Quote Post

Reply to this topicStart new topic
1 Użytkowników czyta ten temat (1 Gości i 0 Anonimowych użytkowników)
0 Zarejestrowanych:

 



RSS Aktualny czas: 20.08.2025 - 11:09