我希望这是一个简单的过程。如何在将mysql数据库中的ID号导出到csv文件之前将其转换为文本?
这是我导出数据的代码:
$con = mysqli_connect('localhost', 'user', 'password', 'database');
if (mysqli_connect_errno()) {
echo "Failed to connect to MySQL: " . mysqli_connect_error();
}
header('Content-Type: text/csv; charset=utf-8');
header('Content-Disposition: attachment;filename=csv_file.csv');
$output = fopen('php://output', 'w');
$query = 'SELECT * FROM table';
$result = mysqli_query($con, $query);
while ($field = mysqli_fetch_assoc($result)){
fputcsv($output, $field);
}
我可以将数据库中的数据导出到csv中,但有没有办法将ID号转换为文本,这样excel就不会去掉前导零?
谢谢!
CSV不包含字段类型信息,因此在Excel中导入时需要格式化和定义数据类型,而不是在导出过程中。
为什么不用引号括起来呢?
假设您的ID位于索引0:
while ($field = mysqli_fetch_assoc($result)){
$field[0] = '"' . field[0] . '"';
fputcsv($output, $field);
}