下面就是php导出excel的程序

<?php
ini_set("display_errors",1);//是否显示报错信息
set_include_path(get_include_path() . PATH_SEPARATOR . '1.6.6/Classes/');//设置此页面包含路径
include "PHPExcel/Writer/Excel5.php"; // 用于其他低版本xls 
//创建一个excel
$objPHPExcel = new PHPExcel();
?>

<?    
//设置PHPExcel类库的include path    
set_include_path('.'. PATH_SEPARATOR .    
                 'i:\Zeal\PHP_LIBS' . PATH_SEPARATOR .    
                  get_include_path());    
   
/** 
* 以下是使用示例,对于以 //// 开头的行是不同的可选方式,请根据实际需要 
* 打开对应行的注释。 
* 如果使用 Excel5 ,输出的内容应该是GBK编码。 
*/   
require_once 'PHPExcel.php';
include 'PHPExcel/IOFactory.php';    
   
// uncomment    
////require_once 'PHPExcel/Writer/Excel5.php';     // 用于其他低版本xls    
// or    
////require_once 'PHPExcel/Writer/Excel2007.php'; // 用于 excel-2007 格式    
   
// 创建一个处理对象实例

//$objExcel = new PHPExcel();    
   
// 创建文件格式写入对象实例, uncomment    
////$objWriter = new PHPExcel_Writer_Excel5($objExcel);     // 用于其他版本格式    
// or    
////$objWriter = new PHPExcel_Writer_Excel2007($objExcel); // 用于 2007 格式    
//$objWriter->setOffice2003Compatibility(true);

// 设置文档属性
//$tpl_mark=iconv("utf-8","gb23122881064151",$tpl_mark);//将utf-8转换为gb2312
//$yourStr = mb_convert_encoding("gb2312", "UTF-8", $yourStr);
//echo date('H:i:s') . " Set properties\n";
$objPHPExcel->getProperties()->setCreator("Maarten Balliauw");
$objPHPExcel->getProperties()->setLastModifiedBy("Maarten Balliauw");
$objPHPExcel->getProperties()->setTitle("Office 2007 XLSX Test Document");
$objPHPExcel->getProperties()->setSubject("Office 2007 XLSX Test Document");
$objPHPExcel->getProperties()->setDescription("Test document for Office 2007 XLSX, generated using PHP classes.");
$objPHPExcel->getProperties()->setKeywords("office 2007 openxml php");
$objPHPExcel->getProperties()->setCategory("Test result file");

// 创建一个表,相当于销售数据
echo date('H:i:s') . " Add some data\n";
$objPHPExcel->setActiveSheetIndex(0);

$sql="select * from booking";
$rs=mysql_query($sql);
$i=0;
$k1="姓名";
$k2="性别";
$k3="年龄";
$k4="电话";
$k5="地址";
$k6="email";
$k7="QQ";
$k8="科室";
$k9="说明";
$k10="预约时间";
$k11="挂号时间";

/*-----------转码-----------*/
$k1=iconv("gb2312","utf-8",$k1);
$k2=iconv("gb2312","utf-8",$k2);
$k3=iconv("gb2312","utf-8",$k3);
$k4=iconv("gb2312","utf-8",$k4);
$k5=iconv("gb2312","utf-8",$k5);
$k6=iconv("gb2312","utf-8",$k6);
$k7=iconv("gb2312","utf-8",$k7);
$k8=iconv("gb2312","utf-8",$k8);
$k9=iconv("gb2312","utf-8",$k9);
$k10=iconv("gb2312","utf-8",$k10);
$k11=iconv("gb2312","utf-8",$k11);
/*---------------------栏目名称-----------------------*/
$objPHPExcel->getActiveSheet()->setCellValue('a1', "$k1");
$objPHPExcel->getActiveSheet()->setCellValue('b1', "$k2");
$objPHPExcel->getActiveSheet()->setCellValue('c1', "$k3");
$objPHPExcel->getActiveSheet()->setCellValue('d1', "$k4");
$objPHPExcel->getActiveSheet()->setCellValue('e1', "$k5");
$objPHPExcel->getActiveSheet()->setCellValue('f1', "$k6");
$objPHPExcel->getActiveSheet()->setCellValue('g1', "$k7");
$objPHPExcel->getActiveSheet()->setCellValue('h1', "$k8");
$objPHPExcel->getActiveSheet()->setCellValue('i1', "$k9");
$objPHPExcel->getActiveSheet()->setCellValue('j1', "$k10");
$objPHPExcel->getActiveSheet()->setCellValue('k1', "$k11");
while($arr=mysql_fetch_array($rs))
{
/*-----------------读取数据--------------------*/
$booking_name=$arr[booking_name];
$booking_sex=$arr[booking_sex];
$booking_age=$arr[booking_age];
$booking_tel=$arr[booking_tel];
$booking_address=$arr[booking_address];
$booking_email=$arr[booking_email];
$booking_qq=$arr[booking_qq];
$booking_ke=$arr[booking_ke];
$booking_content=$arr[booking_content];
$booking_time=$arr[booking_time];
$booking_date=$arr[booking_date];
/*-----------转码-----------*/

$booking_name=iconv("gb2312","utf-8",$booking_name);
$booking_sex=iconv("gb2312","utf-8",$booking_sex);
$booking_age=iconv("gb2312","utf-8",$booking_age);
$booking_tel=iconv("gb2312","utf-8",$booking_tel);
$booking_address=iconv("gb2312","utf-8",$booking_address);
$booking_email=iconv("gb2312","utf-8",$booking_email);
$booking_qq=iconv("gb2312","utf-8",$booking_qq);
$booking_ke=iconv("gb2312","utf-8",$booking_ke);
$booking_content=iconv("gb2312","utf-8",$booking_content);
$booking_time=iconv("gb2312","utf-8",$booking_time);
$booking_date=iconv("gb2312","utf-8",$booking_date);
$u1=$i+2;

/*----------写入内容-------------*/
$booking_date=date("Y-m-d",$booking_date);
$objPHPExcel->getActiveSheet()->setCellValue('a'.$u1, "$booking_name");
$objPHPExcel->getActiveSheet()->setCellValue('b'.$u1, "$booking_sex");
$objPHPExcel->getActiveSheet()->setCellValue('c'.$u1, "$booking_age");
$objPHPExcel->getActiveSheet()->setCellValue('d'.$u1, "<$booking_tel>");
$objPHPExcel->getActiveSheet()->setCellValue('e'.$u1, "$booking_address");
$objPHPExcel->getActiveSheet()->setCellValue('f'.$u1, "$booking_email");
$objPHPExcel->getActiveSheet()->setCellValue('g'.$u1, "<$booking_qq>");
$objPHPExcel->getActiveSheet()->setCellValue('h'.$u1, "$booking_ke");
$objPHPExcel->getActiveSheet()->setCellValue('i'.$u1, "$booking_content");
$objPHPExcel->getActiveSheet()->setCellValue('j'.$u1, "$booking_time");
$objPHPExcel->getActiveSheet()->setCellValue('k'.$u1, "$booking_date");
$i++;
}

// 高置列的宽度
//echo date('H:i:s') . " Set column widths\n";
$objPHPExcel->getActiveSheet()->getColumnDimension('A')->setWidth(30);
$objPHPExcel->getActiveSheet()->getColumnDimension('B')->setWidth(12);

// 添加条件格式

// 设置字体
//echo date('H:i:s') . " Set fonts\n";
$objPHPExcel->getActiveSheet()->getStyle('A1')->getFont()->setBold(true);
$objPHPExcel->getActiveSheet()->getStyle('B1')->getFont()->setBold(true);
$objPHPExcel->getActiveSheet()->getStyle('A7')->getFont()->setBold(true);
$objPHPExcel->getActiveSheet()->getStyle('B7')->getFont()->setBold(true);

// 设置页眉和页脚。如果没有不同的标题奇数/即使是使用单头假定.
//echo date('H:i:s') . " Set header/footer\n";
$objPHPExcel->getActiveSheet()->getHeaderFooter()->setOddHeader('&L&BPersonal cash register&RPrinted on &D');
$objPHPExcel->getActiveSheet()->getHeaderFooter()->setOddFooter('&L&B' . $objPHPExcel->getProperties()->getTitle() . '&RPage &P of &N');

// 设置页方向和规模
//echo date('H:i:s') . " Set page orientation and size\n";
$objPHPExcel->getActiveSheet()->getPageSetup()->setOrientation(PHPExcel_Worksheet_PageSetup::ORIENTATION_PORTRAIT);
$objPHPExcel->getActiveSheet()->getPageSetup()->setPaperSize(PHPExcel_Worksheet_PageSetup::PAPERSIZE_A4);

// 重命名表
//echo date('H:i:s') . " Rename sheet\n";
$objPHPExcel->getActiveSheet()->setTitle('Invoice');

// 设置工作表的第一项指标资产负债表,因此Excel打开,这是第一个资产负债表
$objPHPExcel->setActiveSheetIndex(0);

// 保存Excel 2007文件
//echo date('H:i:s') . " Write to Excel2007 format\n";
$objWriter = PHPExcel_IOFactory::createWriter($objPHPExcel, 'Excel5');
$objWriter->save(str_replace('.php', '.xls', __FILE__));

// 回声记忆高峰使用
//echo date('H:i:s') . " Peak memory usage: " . (memory_get_peak_usage(true) / 1024 / 1024) . " MB\r\n";

// 回声做
//echo date('H:i:s') . " Done writing file.\r\n";
echo "<script>alert('挂号成功')</script>";
}
?>

如果使用 Excel5 ,输出的内容应该是GBK编码的更多相关文章

  1. 在php中,如何将一个页面中的标签,替换为用户想输出的内容

    前言:釜山行,暴露人性, ———————————————————————————————————————————————————————————————————————————— 今天说一个最简单的例 ...

  2. C#正则表达式获取组名,按照组名输出匹配内容

    最近写了个正则表达式匹配的工具,可以按照组名输出匹配内容,还是挺方便的,代码留存一下,以后用的话,直接copy了. Regex regex = new Regex(this.textBoxRegex. ...

  3. (转)Ubuntu中让终端对于历史输出的内容保持足够长

    原地址:http://www.crifan.com/ubuntu_terminal_make_retain_long_enough_history_output_content/ Ubuntu下用终端 ...

  4. JAVA 键盘输入数组,输出数组内容和最大值、最小值

    package shuzu; import java.util.Scanner; import java.util.Arrays; public class shuzu { /** * @param ...

  5. Python 输出文件内容到网络端口

    Python 输出文件内容到网络端口 $ cat mySocketTest.py import sys import time import socket if __name__ == "_ ...

  6. Linux中一个文件10行内容,如何输出5-8内容到屏幕

    题目是这样的,Linux中一个文件10行内容,如何输出5-8内容到屏幕首先我们模拟一下这样的环境: [root@localhost question]# pwd /root/question [roo ...

  7. 重定向、feed输出:控制台输出的内容存放到文件

    重定向.feed输出:控制台输出的内容存放到文件 1.重定向 os.system('wget -r -p -np -k http://www.baidu.com/ -o wget.log' ) 2.f ...

  8. centos 正则,grep,egrep,流式编辑器 sed,awk -F 多个分隔符 通配符 特殊符号. * + ? 总结 问加星 cat -n nl 输出文件内容并加上行号 alias放~/.bash_profile 2015-4-10 第十三节课

    centos 正则,grep,egrep,流式编辑器 sed,awk -F 多个分隔符  通配符 特殊符号. * + ? 总结  问加星 cat -n  nl  输出文件内容并加上行号 alias放~ ...

  9. Linux下查看进程的命令输出的内容解释

    Linux下查看进程的命令输出的内容解释 ps (process status) ps -e 或者ps -A (-e和-A完全一样) PID           TTY         TIME   ...

随机推荐

  1. Spring事务解析1-使用介绍

    spring的事务控制让我们从复杂的事务处理中得到解脱,是我们再也不需要去处理获得连接,关闭连接,事务提交和回滚等操作,再也不需要在事务相关的方法中处理大量的try..catch...finally代 ...

  2. Visual Studio工具栏中无法选择调试设备

    Visual Studio工具栏中无法选择调试设备 在Visual Studio工具栏中,默认显示已经识别的设备.用户可以从中选择对应的设备,进行调试和部署App.但是由于误操作,可能导致该选项丢失. ...

  3. 06_Java多线程、线程间通信

    1. 线程的概念      1.1多进程与多线程 进程:一个正在执行的程序.每个进程执行都有一个执行顺序,该顺序是一个执行路径,或叫一个控制单元. 一个进程至少有一个线程. 线程:就是进程中的一个独立 ...

  4. Jenkins控制台中文输出乱码解决方法

    1. 设置jenkins所在服务器环境变量,右键我的电脑→属性→高级系统设置→环境变量,添加JAVA_TOOL_OPTIONS 2.修改Tomcat配置,进入apache_tomcat/conf文件夹 ...

  5. Codeforces 682B New Skateboard(DP)

    题目大概说给一个数字组成的字符串问有几个子串其代表的数字(可以有前导0)能被4整除. dp[i][m]表示字符串0...i中mod 4为m的后缀的个数 通过在i-1添加str[i]字符转移,或者以st ...

  6. ASP.NET Global.asax详解

    最近在研究bbsmax的代码,但是一直不知道入口在哪里,然后就对各个文件分析了,然后终于在对global.asax文件查看的时候看到Application_BeginRequest才明白入口,所以现在 ...

  7. BZOJ2190 & 欧拉函数

    题意: 求1-n内互质数对个数 SOL: 裸欧拉函数,还有莫比乌斯反演的加速什么的,挖个坑. Code: /*============================================= ...

  8. ACM 找点

    找点 时间限制:2000 ms  |  内存限制:65535 KB 难度:2   描述 上数学课时,老师给了LYH一些闭区间,让他取尽量少的点,使得每个闭区间内至少有一个点.但是这几天LYH太忙了,你 ...

  9. [知识点]状态压缩DP

    // 此博文为迁移而来,写于2015年7月15日,不代表本人现在的观点与看法.原始地址:http://blog.sina.com.cn/s/blog_6022c4720102w6jf.html 1.前 ...

  10. 【BZOJ】3676: [Apio2014]回文串

    http://www.lydsy.com/JudgeOnline/problem.php?id=3676 题意:给一个串求回文串×出现次数的最大值.(|S|<=300000) #include ...