【PHPExcel】使用PHPExcel实现数据批量导出为excel表格

首先需要下载PHPExecel类文件,帮助文档可以参考PHPExcel中文帮助手册|PHPExcel使用方法

下面直接上例子,是我自己写的一个简单的批量导出数据为excel的例子

前台页面 比较简单,就是一个超链接,跳转到处理页面,超链接也可以跟一些参数(看需求)!

<a href="./Process1.php">导出excel表格</a>

后台Process.php页面

/**
* 批量导出数据
* @param $arr  从数据库查询出来,即要导出的数据
*        $name  excel表歌名
*/
function expExcel($arr,$name){
    
    require_once 'PHPExcel.php';
    //实例化
    $objPHPExcel = new PHPExcel();
    /*右键属性所显示的信息*/
     $objPHPExcel->getProperties()->setCreator("zxf")       //作者
                           ->setLastModifiedBy("zxf")       //最后一次保存者
                           ->setTitle('数据EXCEL导出')      //标题
                           ->setSubject('数据EXCEL导出')    //主题
                           ->setDescription('导出数据')     //描述
                           ->setKeywords("excel")           //标记
                          ->setCategory("result file");     //类别


    //设置当前的表格 
    $objPHPExcel->setActiveSheetIndex(0);
    // 设置表格第一行显示内容
    $objPHPExcel->getActiveSheet()
        ->setCellValue('A1', '业主姓名')
        ->setCellValue('B1', '密码')
        ->setCellValue('C1', '手机号码')
        ->setCellValue('D1', '地址')
        //设置第一行为红色字体
        ->getStyle('A1:D1')->getFont()->getColor()->setARGB(PHPExcel_Style_Color::COLOR_RED);

    $key = 1;
    /*以下就是对处理Excel里的数据,横着取数据*/
    foreach($arr as $v){

    //设置循环从第二行开始
    $key++;
     $objPHPExcel->getActiveSheet()

                 //Excel的第A列,name是你查出数组的键值字段,下面以此类推
                  ->setCellValue('A'.$key, $v['name'])    
                  ->setCellValue('B'.$key, $v['pwd'])
                  ->setCellValue('C'.$key, $v['phone'])
                  ->setCellValue('D'.$key, $v['address']);

    }
    //设置当前的表格 
    $objPHPExcel->setActiveSheetIndex(0);
   ob_end_clean();     //清除缓冲区,避免乱码
     header('Content-Type: application/vnd.ms-excel');  //文件类型
     header('Content-Disposition: attachment;filename="'.$name.'.xls"');    //文件名
     header('Cache-Control: max-age=0');
     header('Content-Type: text/html; charset=utf-8');  //编码
     $objWriter = PHPExcel_IOFactory::createWriter($objPHPExcel, 'Excel5');     //excel 2003
     $objWriter->save('php://output');  
     exit;

}

/***********调用**********************/
header("Content-type:text/html;charset=utf-8");

//链接数据库
$link = @mysql_connect('localhost','root','') or die('连接数据库失败');
mysql_select_db('test',$link);
mysql_query('set names utf8');

//先获取数据
$sql = "select * from house";
$res = mysql_query($sql);
$arr = array();
//把$res=>$arr,把结果集内容转移到一个数组中
while ($row = mysql_fetch_assoc($res)){
    $arr[] = $row;
}

//excel表格名
$name = "用户表";

//调用
expExcel($arr,$name)

 使用PHPExcel导出数据至此完毕,对于使用PHPExcel导入到数据库可以参看使用PHPExcel实现数据批量导入到数据库https://blog.csdn.net/qq_25285531/article/details/130356423

  • 0
    点赞
  • 2
    收藏
    觉得还不错? 一键收藏
  • 打赏
    打赏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

下页、再停留

你的鼓励将是我创作的最大动力

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值