PHP excl导出类

2017-03-20  本文已影响0人  2d8f44a33137
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;
}
上一篇下一篇

猜你喜欢

热点阅读