PHP excl导出类
/**
* 设置编码
* @param $incode
* @param $outcode
*/
public function setEncode($incode,$outcode){
$this->inEncode=$incode;//页面编码
$this->outEncode=$outcode;//Excel文件的编码
}
/**
* 设置Excel的标题栏
* @param $titlearr
* @return string
*/
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内容
* @param $array
* @return string
*/
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:attachment;filename=".$filename.".xls");
echo $title;
echo $content;
}