[PHP] Problema con creazione csv

camionistaxcaso

Nuovo Utente
14 Mag 2015
11
0
1
Ciao a tutti, ho questa funzione che mi effettua il download di un file csv, più o meno funziona, ma l' unica pecca è che il file scaricato comincia con 5 righe vuote e poi comincia ad elencare i dati.
Potete vedere il risultato nell allegato, grazie a tutti.
Grazie infinite

PHP:
//Esporta un CSV da una array
    function f_get_cvs_by_array($array, $FileName)
    {
      $csv = "";
      $delim = "";
      $i = 0;
        foreach($array[0] as $keyw => $valore)
        {
          //Evito di stampare la prima colonna che solitamente è l' ID
          if($i !== 0)
          {
          $csv .= $delim . '"'.str_replace('"', '""', $keyw) . '"';
          $delim = ";";
          }
          $i++;
        }
   
      $csv .= "\n";
   
      //recupero i valori dei campi
      foreach($array as $k => $val)
      {
            $delim = "";
            $c = 0;
            foreach($val as $kk => $v)
            {
              //Evito di stampare la prima colonna che solitamente è l' ID
              if($c !== 0)
              {
                $csv .= $delim . '"'.str_replace('"', '""', $v) . '"';
                $delim = ";";
              }
              $c++;
            }
            $csv .= "\n";
       
      }
      header("Content-type: text/csv");
      header("Content-Disposition: attachment; filename=".$FileName.".csv");
      echo $csv;
      exit;

     
   
    }//function end

//Array da passare alla funzione
$array = array(
                          0 => array("id" => "1", "nome" => "Paolo", "cognome" => "Rossi"),
                          1 => array("id"  => "2", "nome" => "Carlo", "cognome" => "Bianchi"),
                          2 => array("id" => "3", "nome" => "Giuseppe", "cognome" => "Verdi"
                       );

//chiamata alla funzione
f_get_cvs_by_array($array, "ilmiofile");
 

Allegati

  • csv.jpg
    csv.jpg
    33,2 KB · Visite: 399
ciao
l'ho provato prima commentando gli header è ottenuto questo
Codice:
"nome";"cognome" "Paolo";"Rossi" "Carlo";"Bianchi" "Giuseppe";"Verdi"
decommentati e aperto con excel non vedo spazi sopra
 

Discussioni simili