在php
文件中,从MySQL表中选择文件值并使用while
循环打印
<?php
$result = $conn->query('SELECT Column_1,Column_2,Column_3 FROM `dbtest`');
while($row = $result->fetch_assoc()) {?>
Header
<?php
print_r($row["Column_1"]);
print_r($row["Column_2"]);
print_r($row["Column_3"]);
?>
Footer
<?php } ?>
现在我正在尝试每次迭代生成单独的.csv
文件。下面的代码有效,但将所有内容打印到一个文件中我试图将它放入while
循环中,但它没有解决问题,只有第一次迭代被添加到.csv
文件中。
<?php
$fp = fopen('php://output', 'w');
if ($fp && $result) {
header('Content-Type: text/csv');
header('Content-Disposition: attachment; filename="file.csv"');
while ($row = $result->fetch_array(MYSQLI_NUM)) {
fputcsv($fp);
}
die;
}
?>
有人知道我在哪里错过了这一点吗?我只是开始并缺少一些理论。非常感谢所有可能的帮助。
循环中的UPDATE 文件创建
<?php
$result = $conn->query('SELECT Column_1,Column_2,Column_3 FROM `dbtest`');
$x = 1;
while($row = $result->fetch_assoc()) {?>
Header
<?php
print_r($row["Column_1"]);
print_r($row["Column_2"]);
print_r($row["Column_3"]);
?>
Footer
<?php
$fp = fopen('php://output', 'w');
if ($fp && $result) {
header('Content-Type: text/csv');
header('Content-Disposition: attachment; filename=export'.$x.'.ldt');
while ($row = $result->fetch_array(MYSQLI_NUM)) {
fputcsv($fp);
}
die;
}
$x++;
}
?>