php - 如何使用 phpexcel 获取带有 mysql 数据的列名?

标签 php mysql

我正在使用 phpexcel 库将 mysql 数据导出到 excel 文件。该代码工作正常。但是创建的 excel 文件没有列名。我也想去取。有没有内置的方法?我需要什么调整来制作我的代码?这是我当前的工作代码:

<?php

require_once 'PHPExcel/classes/PHPExcel.php';

$objPHPExcel = new PHPExcel();

$objPHPExcel->setActiveSheetIndex(0);

$rowcount = 1;

while($row = mysqli_fetch_array($rs))
{
    $objPHPExcel->getActiveSheet()->SetCellValue('A'.$rowcount, $row['id']);
    $objPHPExcel->getActiveSheet()->SetCellValue('B'.$rowcount, $row['title']); 
    $objPHPExcel->getActiveSheet()->SetCellValue('C'.$rowcount, $row['date']);
    $rowcount++; 
} 

$filename = "backup-" . date("h.i.s.d-m-Y") . ".xls";
header('Content-Type: application/vnd.ms-excel');
header("Content-Disposition: attachment; filename=" . $filename);

$objWriter = PHPExcel_IOFactory::createWriter($objPHPExcel, 'Excel5'); 

$objWriter->save('php://output');

?>

最佳答案

使用 mysqli_fetch_fields 获取字段名称。

我已经编辑了您的代码并在代码中添加了列名。它可能对您有所帮助。

<?php

require_once 'PHPExcel/classes/PHPExcel.php';

$objPHPExcel = new PHPExcel();

$objPHPExcel->setActiveSheetIndex(0);

$rowcount = 1;

$fieldinfo=mysqli_fetch_fields($rs);

foreach ($fieldinfo as $val)
{
   $objPHPExcel->getActiveSheet()->SetCellValue('A'.$rowcount, $val->id);
   $objPHPExcel->getActiveSheet()->SetCellValue('B'.$rowcount, $val->title); 
   $objPHPExcel->getActiveSheet()->SetCellValue('C'.$rowcount, $val->date);
}

$rowcount = 2;

while($row = mysqli_fetch_array($rs))
{
$objPHPExcel->getActiveSheet()->SetCellValue('A'.$rowcount, $row['id']);
$objPHPExcel->getActiveSheet()->SetCellValue('B'.$rowcount, $row['title']); 
$objPHPExcel->getActiveSheet()->SetCellValue('C'.$rowcount, $row['date']);
$rowcount++; 
} 

$filename = "backup-" . date("h.i.s.d-m-Y") . ".xls";
header('Content-Type: application/vnd.ms-excel');
header("Content-Disposition: attachment; filename=" . $filename);

$objWriter = PHPExcel_IOFactory::createWriter($objPHPExcel, 'Excel5'); 

$objWriter->save('php://output');

?>

关于php - 如何使用 phpexcel 获取带有 mysql 数据的列名?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/32623152/

相关文章:

php - 多级下拉 Bootstrap 3 navwalker

PHP动态重复Mysqli结果集

mysql - 同一基础表的两个 GROUP BY 子查询的列总和

phpmyadmin 隐藏列

php - 为什么 ...$args 正在向子数组添加值? PHP

javascript - 无法复制变量内的内容

mysql - 如何在 Ionic 2 中将 MySQL 日期时间格式化为 angular2 可用日期格式?

mysql - 如何优化必须使用连接表获取最后 5 行的查询

mysql - 丢弃字段的最后 3 个字符

javascript - WordPress 主题预览器?从哪儿开始?