2016-03-27 13 views
0

ich diesen Code bin mit CSV-Dateien aus einer MySQL-Datenbank zu generieren.Export csv in fester Anzahl von Zeilen von php

I don t, wie, wie für den Export csv die mit Maxime 500 Zeilen zu tun. Zum Beispiel, wenn ich 1100 Ergebnisse auf Abfrage gefunden habe, möchte ich als Ergebnis 3 CSV-Dateien haben, 1 zwei mit 500 Zeilen und dritte mit 100 Zeilen.

<?php 
include "connection.php"; 
$filename = 'export.csv'; 

$fp = fopen($filename, "w"); 

$res = mysql_query("SELECT id, name, first_name, middle_name, last_name, phone FROM data WHERE active='1' "); 

$row = mysql_fetch_assoc($res); 
$line = ""; 
$comma = ""; 
foreach($row as $name => $value) { 
    $line .= $comma . '"' . str_replace('"', '""', $name) . '"'; 
    $comma = ","; 
} 
$line .= "\n"; 
fputs($fp, $line); 

mysql_data_seek($res, 0); 

while($row = mysql_fetch_assoc($res)) { 

    $line = ""; 
    $comma = ""; 
    foreach($row as $value) { 
     $line .= $comma . '"' . str_replace('"', '""', $value) . '"'; 
     $comma = ","; 
    } 
    $line .= "\n"; 
    fputs($fp, $line); 

} 

fclose($fp); 
?> 

Danke

+0

Wird nicht die Frage beantworten, sondern Dateien helfen mit der Erzeugung von CSV: http://php.net/fputcsv – Terminus

Antwort

0

die Anzahl der Zeilenzahl Sie in die Datei setzen. Wenn count durch 500 ohne Rest teilbar ist (count% 500 == 0), schließe die Datei, in die du schreibst, und öffne eine neue Datei.