Autour de Laravel

Comment detecter les variables d'un fichier word??

Avatar de SAWADOGOSIDIKI
SAWADOGOSIDIKI

Bonjour, Je travail sur la gestion des documents. J'utilise PhpWord. Ce pendant monfichier word uploder contient des variables. Je veux que une fois uploader que je puisse recuperer toutes les variables de ce fichier pour les 'enregistrer dans ma base de donnée

      public function convertWordToPDF(Request $request)
{
    /* Set the PDF Engine Renderer Path */
    $domPdfPath = base_path('vendor/dompdf/dompdf');
    \PhpOffice\PhpWord\Settings::setPdfRendererPath($domPdfPath);
    \PhpOffice\PhpWord\Settings::setPdfRendererName('DomPDF');
    $template = new TemplateProcessor(storage_path('app/public/Modele lettre de notification Mali/Modele lettre de notification Mali.docx'));

    /*@ Replacing variables in doc file */
    $template->setValue('date', $request->date);
    $template->setValue('ref', $request->ref);
    $template->setValue('objet', $request->objet);
    $template->setValue('contexte', $request->contexte);


    /*@ Save Temporary Word File With New Name */
    $saveDocPath = storage_path('app/public/Modele lettre de notification Mali/Modele lettre de notification Malie.docx');
    // dd($saveDocPath);
    $template->saveAs($saveDocPath);

    // Load temporarily create word file
    $Content = \PhpOffice\PhpWord\IOFactory::load($saveDocPath);

    //Save it into PDF
    $savePdfPath = storage_path('app/public/Modele lettre de notification Mali/new-result.pdf');

    /*@ If already PDF exists then delete it */
    if (file_exists($savePdfPath)) {
        unlink($savePdfPath);
    }

    //Save it into PDF
    $PDFWriter = \PhpOffice\PhpWord\IOFactory::createWriter($Content, 'PDF');
    $PDFWriter->save($savePdfPath);
    // dd($savePdfPath);
    
    // echo 'File has been successfully converted';

    return redirect()->back()->with("success", "Document word a été converti avec succès");
    /*@ Remove temporarily created word file */
    if (file_exists($saveDocPath)) {
        unlink($saveDocPath);
    }
}

}

//  voici le contenu de mon fichier word que je veux recuperer les variables puis enregister dans la bd
 

Bamako, le ${date}
Réf : ${ref}
Objet : Réponse à votre offre - Consultation restreinte N° ${objet}

Avatar de rachids
rachids

Bonjour,

Je ne suis pas certain de comprendre votre problématique.

Le contenu des variables est déjà dans la request non ?

$template->setValue('date', $request->date);
$template->setValue('ref', $request->ref);
$template->setValue('objet', $request->objet);
$template->setValue('contexte', $request->contexte);

Vous ne pouvez pas répondre à ce sujet.