>  기사  >  백엔드 개발  >  一个最简单phpExcel导出的例子,麻烦指点一上

一个最简单phpExcel导出的例子,麻烦指点一上

WBOY
WBOY원래의
2016-06-13 10:34:59761검색

一个最简单phpExcel导出的例子,麻烦指点一下?
php版本 5.2 线程安全 vc6
服务器:apache2.2 线程 模块加载方式(CLI)
其他页面运转正常


废话少说,excel的导出代码,最简单的测试代码,但是下载以后打开提示如下

重新命名无效的工作表名称。

PHP code
<!--Code highlighting produced by Actipro CodeHighlighter (freeware)http://www.CodeHighlighter.com/--><?php require_once($_SERVER['DOCUMENT_ROOT']  ."/inc/phpexcel/PHPExcel.php");require_once($_SERVER['DOCUMENT_ROOT']  ."/inc/phpexcel/PHPExcel/Writer/Excel5.php");// 创建一个处理对象实例      $objExcel = new PHPExcel();       $objExcel->setActiveSheetIndex(0);      $objActSheet = $objExcel->getActiveSheet();           //设置当前活动sheet的名称      $objActSheet->setTitle(iconv('utf-8','gbk', "测试工作pu名字"));          //ROW 1$objActSheet->setCellValueByColumnAndRow(1,2,iconv('utf-8','gbk', "测试"));//ROW 2//ROW 3//获取数据    //在浏览器导出header("Content-Type: application/force-download");header('Content-Type: application/vnd.ms-excel');header("Content-Disposition: attachment;filename=\"导出查询.xls\"");header('Cache-Control: max-age=0');header("Cache-Control: must-revalidate, post-check=0, pre-check=0"); header("Pragma: no-cache"); // 创建文件格式写入对象实例, uncomment      $objWriter = new PHPExcel_Writer_Excel5($objExcel);         //到文件      $objWriter->save("php://output");  ?>


------解决方案--------------------
require('config.php');//加载配置文
header ("Expires: Mon, 26 Jul 1997 05:00:00 GMT");
header ("Last-Modified: " . gmdate("D,d M YH:i:s") . " GMT");
header ("Cache-Control: no-cache, must-revalidate");
header ("Pragma: no-cache");
header ('Content-type: application/x-msexcel');
header ("Content-Disposition: attachment; filename=weibo.xls" );
header ("Content-Description: PHP/INTERBASE Generated Data" );
//
// the next lines demonstrate the generation of the Excel stream
//
$content = $db->getList("select * from weibo_baidu");
$num = count($content);

/*echo $num;
foreach($content as $k=>$contents){
echo $aa=$k+1;
echo "
";
//echo $contents['b_title']."
";
}*/
xlsBOF(); // begin Excel stream
xlsWriteLabel(0, 0,iconv("UTF-8", "GBK",序号) ); 
xlsWriteLabel(0, 1,iconv("UTF-8", "GBK",发布者));
xlsWriteLabel(0, 2,iconv("UTF-8", "GBK",内容概要) );
xlsWriteLabel(0, 3,iconv("UTF-8", "GBK",URl));
xlsWriteLabel(0, 4,iconv("UTF-8", "GBK",来源));
xlsWriteLabel(0, 5,iconv("UTF-8", "GBK",抓取日期));
foreach($content as $k=>$contents){
 $i=$k+1;
xlsWriteLabel($i, 0, $i);
xlsWriteLabel($i, 1, iconv("UTF-8", "GBK",$contents['b_title']));
xlsWriteLabel($i, 2, iconv("UTF-8", "GBK",$contents['b_info']));
xlsWriteLabel($i, 3, iconv("UTF-8", "GBK",$contents['b_url']));
xlsWriteLabel($i, 4, iconv("UTF-8", "GBK",$contents['b_source']));
xlsWriteLabel($i, 5, iconv("UTF-8", "GBK",$contents['b_tiem']));
}
xlsEOF(); // close the stream 


// ----- begin of function library -----
// Excel begin of file header
function xlsBOF() {
echo pack("ssssss", 0x809, 0x8, 0x0, 0x10, 0x0, 0x0);
return;
}
// Excel end of file footer
function xlsEOF() {
echo pack("ss", 0x0A, 0x00);
return;
}
// Function to write a Number (double) into Row, Col
function xlsWriteNumber($Row, $Col, $Value) {
echo pack("sssss", 0x203, 14, $Row, $Col, 0x0);
성명:
본 글의 내용은 네티즌들의 자발적인 기여로 작성되었으며, 저작권은 원저작자에게 있습니다. 본 사이트는 이에 상응하는 법적 책임을 지지 않습니다. 표절이나 침해가 의심되는 콘텐츠를 발견한 경우 admin@php.cn으로 문의하세요.