在 PHP 中将 MySQL 数据导出到 Excel
问题:
将 MySQL 数据导出到时Excel 文件中,文本会合并到单个单元格中,而不是分成单独的单元格。
解决方案:
将 MySQL 数据导出到 Excel 并包含每行值在单独的单元格中,修改 PHP 代码如下:
<code class="php">// ... while (($row = mysql_fetch_row($result)) != FALSE) { foreach ($row as $value) { if (is_null($value)) { $line .= 'NULL' . "\t"; } else { $value = str_replace('"', '""', $value); $value = '"' . $value . '"' . "\t"; $line .= $value; } } $line = trim($line) . "\n"; $line = preg_replace('/\r\n|\r|\n/', "\n", $line); // Normalize newlines $data .= $line; } // ...</code>
说明:
更新的代码:
<code class="php">$queryexport = (" SELECT username,password,fullname FROM ecustomer_users WHERE fk_customer='" . $fk_customer . "' "); $result = mysql_query($queryexport); $header = ''; for ($i = 0; $i < $count; $i++) { $header .= mysql_field_name($result, $i) . "\t"; } while (($row = mysql_fetch_row($result)) != FALSE) { $line = ''; foreach ($row as $value) { if (is_null($value)) { $line .= 'NULL' . "\t"; } else { $value = str_replace('"', '""', $value); $value = '"' . $value . '"' . "\t"; $line .= $value; } } $line = trim($line) . "\n"; $line = preg_replace('/\r\n|\r|\n/', "\n", $line); // Normalize newlines $data .= $line; } header("Content-type: application/vnd.ms-excel; name='excel'"); header("Content-Disposition: attachment; filename=exportfile.xls"); header("Pragma: no-cache"); header("Expires: 0"); // output data echo $header . "\n" . $data; mysql_close($conn);</code>
以上是如何使用 PHP 将 MySQL 数据分离到 Excel 导出中的单个单元格中?的详细内容。更多信息请关注PHP中文网其他相关文章!