Matlamat untuk menukar tatasusunan produk kepada fail CSV boleh dicapai dengan berkesan. Walau bagaimanapun, terdapat nuansa untuk ditangani.
Dalam kod anda, isu utama nampaknya terletak pada penggunaan berbilang gelung, yang boleh membawa kepada output CSV satu baris yang tidak diingini.
< ;h3>Penyelesaian yang Lebih Baik
Untuk mengatasinya, pertimbangkan untuk menggunakan fungsi PHP terbina dalam, fputcsv(). Berikut ialah coretan kod yang dipertingkatkan:
<code class="php">$sql = "SELECT id, name, description FROM products"; if ($result = $mysqli->query($sql)) { $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')); while ($p = $result->fetch_array()) { fputcsv($output, $p); } fclose($output) or die("Can't close php://output"); }</code>
Dalam pendekatan yang disemak ini:
Nota: Ingat untuk menyahpaut() fail selepas menciptanya jika anda tidak mahu menyimpan salinan pada pelayan.
Dengan melaksanakan perubahan ini, anda boleh menjana fail CSV yang diformat dengan baik dengan pengepala dan pemisah baris seperti yang dijangkakan.
Atas ialah kandungan terperinci Cara Menyelesaikan PHP Array kepada Isu Penukaran CSV dan Melaksanakan Pendekatan Unggul. Untuk maklumat lanjut, sila ikut artikel berkaitan lain di laman web China PHP!