Das Konvertieren von Arrays in CSV-Dateien in PHP kann mühsam sein. Wenn Sie Schwierigkeiten haben, eine ordnungsgemäß formatierte CSV-Datei zu erstellen, bietet dieser Artikel eine bessere Lösung.
Bedenken Sie den folgenden Code:
<code class="php">$prods = [1, 2, 3]; foreach ($prods as $prod) { $sql = "SELECT * FROM products WHERE id = '$prod'"; $result = $mysqli->query($sql); $info = $result->fetch_array(); } // ... rest of the code</code>
Dieser Code führt möglicherweise zu einer CSV-Datei, die aus einer einzelnen, langen Zeile besteht und nicht dem gewünschten Format mit Überschriften und Zeilenumbrüchen entspricht.
Um dieses Problem zu beheben, ersetzen Sie den Code, der in die CSV-Datei schreibt, durch Folgendes:
<code class="php">$output = fopen("php://output",'w') or die("Can't open php://output"); header("Content-Type:application/csv"); header("Content-Disposition:attachment;filename=pressurecsv.csv"); fputcsv($output, array('id','name','description')); foreach($prod as $product) { fputcsv($output, $product); } fclose($output) or die("Can't close php://output");</code>
Die Funktion fputcsv() verarbeitet automatisch Escapezeichen, Feldtrennzeichen und Zeilenenden und stellt so sicher, dass die CSV richtig formatiert ist .
Das obige ist der detaillierte Inhalt vonWie konvertiert man ein PHP-Array in eine gut formatierte CSV-Datei mit Headern?. Für weitere Informationen folgen Sie bitte anderen verwandten Artikeln auf der PHP chinesischen Website!