php 导出excel类,php 导出excel类

/**

* excel导出类

*

* 使用方法

$excel=new Excel();

* //设置编码:

*$excel->setEncode("utf-8","gb2312"); //如果不转码,参数写一样即可,例如$excel->setEncode("utf-8","utf-8");

* //设置标题栏

* $titlearr=array("a","b","c","d");

* //设置内容栏

* $contentarr=array(

* 1=>array("ab","ac","ad","ae"),

* 2=>array("abc","acc","adc","aec"),

* 3=>array("abd","acd","add","aed"),

* 4=>array("abe","ace","ade","aee"),

* );

* $excel->getExcel($titlearr,$contentarr,"abc");

*/

class Excel {

var $inEncode; //一般是页面编码

var $outEncode; //一般是Excel文件的编码

public function __construct(){

}

/**

*设置编码

*/

public function setEncode($incode,$outcode){

$this->inEncode=$incode;

$this->outEncode=$outcode;

}

/**

*设置Excel的标题栏

*/

public function setTitle($titlearr){

$title="";

foreach($titlearr as $v){

if($this->inEncode!=$this->outEncode){

$title.=iconv($this->inEncode,$this->outEncode,$v)."\t";

}

else{

$title.=$v."\t";

}

}

$title.="\n";

return $title;

}

/**

*设置Excel内容

*/

public function setRow($array){

$content="";

foreach($array as $k => $v){

foreach($v as $vs){

if($this->inEncode!=$this->outEncode){

$content.=iconv($this->inEncode,$this->outEncode,$vs)."\t";

}

else{

$content.=$vs."\t";

}

}

$content.="\n";

}

return $content;

}

/**

*生成并自动下载Excel

* $titlearr 标题栏数组

* $array 内容数组

* $filename 文件名称 (为空,已当前日期为名称)

*/

public function getExcel($titlearr,$array,$filename=''){

if($filename==''){

$filename=date("Y-m-d");

}

$title=$this->setTitle($titlearr);

$content=$this->setRow($array);

header("Content-type:application/vnd.ms-excel");

header("Content-Disposition:filename=".$filename.".xls");

echo $title;

echo $content;

}

}

本文原创发布php中文网,转载请注明出处,感谢您的尊重!

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值