Thinkphp 封装数据导出Excel方法

  • 内容
  • 相关
/**
	 * 导出数据为excel表格
	 *@param $data    一个二维数组,结构如同从数据库查出来的数组
	 *@param $title   excel的第一行标题,一个数组,如果为空则没有标题
	 *@param $filename 下载的文件名
	 *@examlpe
	 $stu = M ('User');
	 $arr = $stu -> select();
	 exportexcel($arr,array('id','账户','密码','昵称'),'文件名!');
	 */
	function exportexcel($data=array(),$title=array(),$filename='newfile'){
		header("Content-type:application/octet-stream");
		header("Accept-Ranges:bytes");
		header("Content-type:application/vnd.ms-excel");
		header("Content-Disposition:attachment;filename=".$filename.".xls");
		header("Pragma: no-cache");
		header("Expires: 0");
		//导出xls 开始
		if (!empty($title)){
			foreach ($title as $k => $v) {
				$title[$k]=iconv("UTF-8", "GB2312",$v);
			}
			$title= implode("\t ", $title);
			echo "$title\n";
		}
			if (!empty($data)){
				foreach($data as $key=>$val){
					foreach ($val as $ck => $cv) {
					$data[$key][$ck]=iconv("UTF-8", "GB2312", $cv);
					}
					$data[$key]=implode("\t ", $data[$key]);
			
				}
			echo implode("\n",$data);
			}
			exit;
	}

本文标签:

版权声明:若无特殊注明,本文皆为《Leek》原创,转载请保留文章出处。

本文链接:Thinkphp 封装数据导出Excel方法 - https://pjax.cc/45.html

发表评论

电子邮件地址不会被公开。 必填项已用*标注

允许邮件通知