Génération de fichiers à la demande

Le but est de renvoyer un fichier généré à la volée par une action d'un contrôleur.

Par exemple, un fichier PDF ou Excel est généré et envoyé au navigateur pour affichage ou enregistrement.

use Symfony\Component\HttpFoundation\Response;
 
class PagesController extends AbstractController {
 
    /**
     * @Route("/exemple-pdf", name="exemple_pdf")
     */
    public function exemplePdf() {
 
        return new Response(
            $contenu_pdf,          // Contenu renvoyé par une librairie de génération de PDF
            200,                   // Code retour HTTP
            [
                'Content-Type'        => 'application/pdf',
                'Content-Disposition' => 'attachment; filename="test.pdf"',
            ]
        );
    }
 
}

Liens