php生成excel文件

转自:http://hi.baidu.com/34pc/blog/item/50e6b1fa036726dcb58f314e.htmlphp
1、不用COM,生成excel文件
<?
header("Content-type:application/vnd.ms-excel");
header("Content-Disposition:filename=test.xls");
echo "列一\t列二\t列三\r\n";
echo "test1\t";
echo "test2\t";
echo "test3\r\n";
?>
  在php环境运行上面的代码,大家就可以看到浏览器询问用户是否下载excel文档,点击保存,硬盘上就多了一个excel的文件,使用excel打开就会看到最终的结果,怎么样不错吧。
  其实在做真正的应用的时候,大家可以将数据从数据库中取出,然后按照每一列数据结束后加\t,每一行数据结束后加\r\n的方法echo出来,在php的开头用header("Content-type:application/vnd.ms-excel");表示输出的是excel文件,用header("Content-Disposition:filename=test.xls");表示输出的文件名为text.xls。这样就ok了。
  我们更可以修改header让他输出更多格式的文件,这样php在处理各种类型文件方面就更加方便了。
2、用PHP将mysql数据表转换为excel文件格式
<?
include "conn.php";
$dd=1;
 $sql2="select * from userinfo where addtime>='".$_POST["datefrom"]." 00:00:00' and addtime<='".$_POST["dateto"]." 23:59:59'   order by addtime desc ";
 $sql = qeeka_query($sql2,$db);
 //echo $sql2;
 if($myrow = mysql_fetch_array($sql)){
  header("Content-type:application/vnd.ms-excel");
header("Content-Disposition:filename=qbsbooks.xls");
  echo("序号\t姓名\t性别\t年龄\t出生日期\t添加日期\r\n");
  do{
   $id=$myrow["id"];
   $username=$myrow["username"];
   $sex=$myrow["sex"];
   $age=$myrow["age"];
   $birthday=$myrow["birthday"];
   $addtime=$myrow["addtime"];
   echo $dd.\t;
   echo$username;
   echo "\t";
   echo $sex;
   echo "\t ";
   echo $age;
   echo "\t";
   echo $birthday;
   echo "\t";
   echo $addtime;
   echo "\r\n";
   $dd++;
  }while($myrow = mysql_fetch_array($sql));
 }
?>

    A+
发布日期:2009年10月13日  所属分类:未分类

发表评论

:?: :razz: :sad: :evil: :!: :smile: :oops: :grin: :eek: :shock: :???: :cool: :lol: :mad: :twisted: :roll: :wink: :idea: :arrow: :neutral: :cry: :mrgreen: