首先到http://www.codeplex.com/PHPExcel下载PHPExcel

下面就是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","gb2312",$tpl_mark);//将utf-8转换为gb2881064151
//$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>";
}
?>

PHPExcel创建文件格式写入对象实例的更多相关文章

  1. File类的特点?如何创建File类对象?Java中如何操作文件内容,什么是Io流Io流如何读取和写入文件?字节缓冲流使用原则?

    重难点提示 学习目标 1.能够了解File类的特点(存在的意义,构造方法,常见方法) 2.能够了解什么是IO流以及分类(IO流的概述以及分类) 3.能够掌握字节输出流的使用(继承体系结构介绍以及常见的 ...

  2. 【转载】 C#中手动创建一个DataTable对象并写入数据

    在C#操作集合数据的过程中,有时候需要手动创建一个DataTable对象,并手动设置DataTable对象的Columns列名等信息,最后再往手动创建的DataTable对象中写入相应的数据信息,此时 ...

  3. SpringBoot源码解析:创建SpringApplication对象实例

    上篇文章SpringBoot自动装配原理解析中,我们分析了SpringBoot的自动装配原理以及@SpringBootApplication注解的原理,本篇文章则继续基于上篇文章中的main方法来分析 ...

  4. js创建、写入、读取文件(转)

    下面是对此知识的系统介绍(转自互联网): Javascript 是网页制作中离不开的脚本语言,依靠它,一个网页的内容才生动活泼.富有朝气.但也许你还没有发现并应用它的一些更高级的功能吧?比如,对文件和 ...

  5. Effective java笔记(一),创建与销毁对象

    1.考虑用静态工厂方法代替构造器 类的一个实例,通常使用类的公有的构造方法获取.也可以为类提供一个公有的静态工厂方法(不是设计模式中的工厂模式)来返回类的一个实例.例如: //将boolean类型转换 ...

  6. Effective Java笔记一 创建和销毁对象

    Effective Java笔记一 创建和销毁对象 第1条 考虑用静态工厂方法代替构造器 第2条 遇到多个构造器参数时要考虑用构建器 第3条 用私有构造器或者枚举类型强化Singleton属性 第4条 ...

  7. 初学C#和MVC的一些心得,弯路,总结,还有教训(4)--Cache 关于创建多个缓存实例

    asp.net中的数据缓存可以用 HttpRuntime.Cache ,这个是大家都知道的,但如果缓存的数据比较多,又比较杂乱,想要把缓存分开管理(也就是创建多个缓存实例)应该怎么做呢... 于是常规 ...

  8. 《Effective Java》—— 创建与销毁对象

    本篇主要总结的是<Effecticve Java>中关于创建和销毁对象的内容. 比如: 何时以及如何创建对象 何时以及如何避免创建对象 如何确保及时销毁 如何管理对象销毁前的清理动作 考虑 ...

  9. 【Java基础】创建和销毁对象

    Num1:考虑用静态工厂方法代替构造器 对于类而言,常见的方法是提供一个公有的构造器,但其实还有一种方法叫做静态工厂方法(static factory method),它只是一个返回类的实例静态方法. ...

随机推荐

  1. POJ 2418 字典树

    题目链接:http://poj.org/problem?id=2418 题意:给定一堆树的名字,现在问你每一棵树[无重复]的出现的百分比,并按树名的字典序输出 思路:最简单的就是用map来写,关于字典 ...

  2. HTTP基础05--http首部

    HTTP 报文首部 HTTP 请求报文 在请求中,HTTP 报文由方法.URI.HTTP 版本.HTTP 首部字段等部分构成. HTTP 响应报文 在响应中,HTTP 报文由 HTTP 版本.状态码( ...

  3. 短信猫 TIdTCPServer TIdTCPClient

    短信猫 服务端: IdTCPServer1: TIdTCPServer; IdAntiFreeze1: TIdAntiFreeze; unit UnitSever; interface uses Wi ...

  4. 解决(空密码的root)提示修改phpmyadmin用户密码

    打开 phpmyadmin数据表,点击权限 如果没有,请参考:http://jingyan.baidu.com/article/636f38bb293a9bd6b846100d.html 创建   在 ...

  5. BZOJ4382 : [POI2015]Podział naszyjnika

    对于每种颜色,可以发现可以切的位置被分割成了若干段独立的区域. 给每个区域一个编号,将$m$种颜色的情况当成字符串来看,如果两个切口的字符串完全匹配,那么可以在这里切两刀. 可以构造hash函数,通过 ...

  6. Hadoop2.2.0 hive0.12 hbase0.94 配置问题记录

    环境:centos6.2 Hadoop2.2.0 hive0.12 hbase0.94 1>hadoop配好之后,跑任务老失败,yarn失败,报out of memory错误,然后怎么调整内存大 ...

  7. [转]maven安装以及eclipse配置maven

    转自:http://jingyan.baidu.com/article/295430f136e8e00c7e0050b9.html 方法/步骤 下载maven的bin,在apache官方网站可以下载. ...

  8. BZOJ3631[JLOI2014]松鼠的新家 题解

    题目大意: 给你一棵树,要从编号为a[1]的节点走到编号为a[2]的节点再走到编号为a[3]的节点……一直走到编号为a[n]的节点.问每个节点最少访问多少次. 思路: 将其进行轻重链剖分,则从a[i] ...

  9. 【noiOj】p8207(233)

    07:和为给定数 查看 提交 统计 提问 总时间限制:  1000ms 内存限制:  65536kB 描述 给出若干个整数,询问其中是否有一对数的和等于给定的数. 输入 共三行:第一行是整数n(0 & ...

  10. 【JAVA】ConcurrentHashMap

    HashTable 写操作时候,Lock全表    源码:  public synchronized V put(K key, V value) {  // Make sure the value i ...