>  기사  >  백엔드 개발  >  PHPExcel을 사용하여 데이터를 Excel 테이블로 일괄 내보내는 방법

PHPExcel을 사용하여 데이터를 Excel 테이블로 일괄 내보내는 방법

巴扎黑
巴扎黑원래의
2017-06-16 10:17:191416검색

아래 편집기에서는 PHPExcel을 사용하여 데이터를 Excel 테이블로 일괄 내보내는 방법에 대한 기사를 제공합니다(반드시 읽어야 함). 에디터가 꽤 좋다고 생각해서 지금 공유해서 참고용으로 올려보겠습니다. 편집기를 따라 살펴보겠습니다

먼저 PHPExecel 클래스 파일을 다운로드해야 합니다. 도움말 문서는 PHPExcel 중국어 도움말 설명서|PHHPExcel 사용 방법을 참조하세요.

다음 예는 제가 직접 작성한 Excel로의 간단한 일괄 내보내기 데이터입니다

첫 페이지 비교적 간단합니다. 하이퍼링크만 있으면 처리 페이지로 이동할 수 있으며, 하이퍼링크 뒤에는 일부 매개변수가 올 수도 있습니다( 요구 사항에 따라 다름)!


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

Backend Process.php 페이지


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


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

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

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

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

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

}

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

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

//先获取数据
$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을 사용하여 데이터 일괄 업로드를 참조하세요. 데이터베이스로

위 내용은 PHPExcel을 사용하여 데이터를 Excel 테이블로 일괄 내보내는 방법의 상세 내용입니다. 자세한 내용은 PHP 중국어 웹사이트의 기타 관련 기사를 참조하세요!

성명:
본 글의 내용은 네티즌들의 자발적인 기여로 작성되었으며, 저작권은 원저작자에게 있습니다. 본 사이트는 이에 상응하는 법적 책임을 지지 않습니다. 표절이나 침해가 의심되는 콘텐츠를 발견한 경우 admin@php.cn으로 문의하세요.