PHP代码:运行sql并导出结果为excel文件
时间: 2024-03-03 20:53:17 浏览: 14
以下是一个示例PHP代码,可以运行SQL查询并将结果导出为Excel文件:
```php
<?php
$db_host = "localhost"; //数据库主机名
$db_user = "root"; //数据库用户名
$db_pass = "password"; //数据库密码
$db_name = "mydatabase"; //数据库名称
//连接数据库
$conn = mysqli_connect($db_host, $db_user, $db_pass, $db_name);
if (!$conn) {
die("连接失败:" . mysqli_connect_error());
}
//运行SQL查询
$sql = "SELECT * FROM mytable";
$result = mysqli_query($conn, $sql);
if (!$result) {
die("查询失败:" . mysqli_error($conn));
}
//导出Excel文件
header("Content-Type: application/vnd.ms-excel");
header("Content-Disposition: attachment; filename=\"mydata.xls\"");
header("Pragma: no-cache");
header("Expires: 0");
echo "ID\tName\tAge\n"; //输出Excel表头
while ($row = mysqli_fetch_array($result, MYSQLI_ASSOC)) {
echo "{$row['id']}\t{$row['name']}\t{$row['age']}\n"; //输出Excel数据
}
mysqli_free_result($result);
mysqli_close($conn);
?>
```
在这个示例代码中,我们首先连接到数据库,然后运行SQL查询,获取结果集。接着,我们设置HTTP响应头,将输出的内容类型设置为Excel,并指定Excel文件名。最后,我们循环遍历结果集,将查询结果输出为Excel文件的内容,以制表符分隔每一列,以换行符分隔每一行。注意,在输出Excel文件前,我们需要先输出Excel的表头。完成输出后,我们关闭结果集和数据库连接。