2017-08-26 5 views
0

J'essayais d'exporter l'enregistrement comme fichier csv sur le navigateur et il obtient le téléchargement dans le dossier de téléchargement, mais tout en vérifiant sur le répertoire direct, il est également enregistré dans le dossier racine des projets. Je ne comprends pas pourquoi.Comment éviter le fichier csv d'être enregistré dans le dossier racine des projets

Ci-dessous le code de fonction.

protected function downloadcsv($fieldValue,$fieldArray,$from,$end){ 

     ob_clean(); 
     $data = $fieldValue->toArray(); 

     $filename = ''; 

     if($from === '' || $end === ''){ 

      $filename = "ExportOrders.csv"; 

     }else{ 

      $filename = "Orders-". $from ." to ". $end .'.csv'; 
     } 
     $handle = fopen($filename, 'w+'); 

     fputcsv($handle,$fieldArray); 

     foreach($data as $value) { 

      fputcsv($handle, $value); 
     } 

     fclose($handle); 

     $headers = array(
      'Content-Type' => 'text/csv', 
     ); 

     return Response::download($filename,$filename, $headers); 
} 

Merci

Répondre

0

La chose est que la réponse :: téléchargement télécharge toujours fichier. Afin de supprimer le fichier après le téléchargement, nous pouvons faire suite.

response()->download($filename,$filename, $headers)->deleteFileAfterSend(true); 

->deleteFileAfterSend(true). Cette partie du code supprimera le fichier téléchargé.

Merci.