Bonjour,

J'ai besoin de créer un fichier json à partir d'une entité. Lorsque j'encode le tableau retourné, les clés sont entre crochets et sont transformées en caractères spéciaux => inexploitable dans javascript.

Pour info, j'utilise renderView dans le controller pour enlever le header suivant dans le fichier final:
Code : Sélectionner tout - Visualiser dans une fenêtre à part
HTTP/1.0 200 OK Cache-Control: no-cache Date: xxxx
J'ai essayé d'utiliser une JsonResponse mais ce header réapparait.

Dans mon controller:
Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
public function chargementEventAction()
    {
 
          $events = $this->getDoctrine()
                         ->getManager()
                       ->getRepository('LdbPlanningBundle:EventEntity')
                       ->findAllArrayEvents();
 
 
        $response = new Response();
        $response->headers->set('Content-Type', 'application/json');
 
        $response->setContent($this->renderView('LdbPlanningBundle:planner:planning.html.twig', array('response' => json_encode($events))));
        $response->headers->set('Content-Type', 'text/html');
        return $response;
 
    }
Dans mon repository:
Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3
4
5
6
7
8
9
10
11
public function findAllArrayEvents()
 
    {
 
        return $this
            ->createQueryBuilder('a')
            ->getQuery()
            ->getArrayResult()
        ;
 
    }
Comment cela se fait-il?