Bonjour tous le monde,

Je suis sur laravel 5.4 et j'essaie de faire un p'ti site perso pour suivre des dossiers liés à des affaires.
J'importe un fichier xlsx contenant 2 onglets avec le plugin Maatwebsite

public function importFile(Request $request)
    {
        if ($request->hasFile('File')) {
            ini_set('max_execution_time', 300);
            $path = $request->file('File')->getRealPath();

            Excel::filter('chunk')->load($path)->chunk(200, function($results) {
                foreach($results as $sheet) {
                    $sheetTitle = $sheet->getTitle();
                    if ($sheetTitle === "Affaires") {
                        $sheet->each(function ($row) {
                            $row = $row->toArray();
                            Affair::updateOrCreate($row);
                        });
                    }
                    elseif($sheetTitle === "Dossiers"){
                        $sheet->each(function ($row) {
                            $row = $row->toArray();
                            Dir::updateOrCreate($row);
                        });
                    };
                }
            });
        }
        dd("fini");
        return redirect()->route('import');
    }

Le problème c'est que le code suivant:

    dd("fini");

ne se produit jamais et je fini par avoir une erreur ngnix.
Pourtant en regardant ma base de donnée j'ai bien mes 200 enregistrements dans chacune de mes tables.

Avez vous une idée? car là j'ai beau chercher, impossible de trouver la solution.

Merci par avance pour votre aide.

1 réponse


Vannou
Auteur

Finalement j'ai trouvé.

C'était DebugBar qui ralantissait le code.

Bonne journée à tous