Home > php教程 > php手册 > 导出考核统计php导出Excelde应用

导出考核统计php导出Excelde应用

WBOYWBOYWBOYWBOYWBOYWBOYWBOYWBOYWBOYWBOYWBOYWBOYWB
Release: 2016-06-13 11:36:04
Original
861 people have browsed it

 // 导出考核统计

	function daochu(){
		require_once 'outExcel.class.php';
		header("Content-Type: application/vnd.ms-excel;charset=utf-8");
		$kaoheCode = $_GET['kaoheCode'];
		$dao = new PerformanceServices();
		$kaoheinfo = $dao->getKaoheInfo($kaoheCode);
		$filename=$kaoheinfo['KH_NAME']."考核统计";

		$encoded_filename = urlencode($filename);
		$encoded_filename = str_replace("+", "%20", $encoded_filename);
		$ua = $_SERVER["HTTP_USER_AGENT"];
		header('Content-Type: application/octet-stream');
		
		if (preg_match("/MSIE/", $ua)) {
			header('Content-Disposition: attachment; filename="' . $encoded_filename . '.xls"');
		} else if (preg_match("/Firefox/", $ua)) {
			header('Content-Disposition: attachment; filename*="utf8''' . $filename . '.xls"');
		} else {
			header('Content-Disposition: attachment; filename="' . $filename . '.xls"');
		}
		
				
		header("Pragma: no-cache");
		header("Expires: 0");
		$dates_excel = $dao->getTongjiInfo($kaoheCode); 
		$mytime = date("Y-m-d H:i:s",$dates_excel['KH_TIME']);
 		$excel=new SimpleExcel();//调用类开始
		$excel->excelItem(array("统计时间",$mytime));//第一行标题,可以不要
				$excel->excelItem(array("序号","姓 名","部门","分数"));//第一行标题,可以不要
		
		$excel->colsAttrib(array("1","a","a","1"));//定义属性,数字型为"1",字符型为"a"
		$scores = explode(',',$dates_excel['KH_SCORES']);
		//echo $scores;exit();
		$i=0;
		foreach ($scores as $v){
			$i++;
			$r = explode(':', $v);
			$userCode = $r[0];
			$user = $dao->getUserInfo($userCode);
			$dept=$dao->getCellName($userCode);
			$excel->excelWrite(array($i,$user['QT_NAME'],$dept,$r[1]));
		}
		$excel->excelEnd();
	}
Copy after login

以下是excel类 outExcel.class.php

<?php class SimpleExcel
{               
var $rowsNum=0;

var $attrib=array();

var $in_charset = 'UTF-8';

function SimpleExcel()
{   
echo pack("ssssss",0x809,0x8,0x0,0x10,0x0,0x0);
return;
}           


function excelItem($string=array())
{       
for ($i=0;$i<count($string);$i++)
{
$curStr = $string[$i];
$curStr = $this->iconvToData($curStr);

$L = strlen($curStr);
echo pack("ssssss",0x204,8+$L,$this->rowsNum,$i,0x0,$L);
echo $curStr; 
}
$this->rowsNum++;
return;
}           

function colsAttrib($string=array())
{           
$this->attrib=$string;
return;
}       

function excelWrite($string=array())
{   
for ($i=0;$i<count>iconvToData($curStr);

if ($this->attrib[$i]=="1")
{
echo pack("sssss",0x203,14,$this->rowsNum,$i,0x0);
echo pack("d",$curStr);
} else {
$L = strlen($curStr);
echo pack("ssssss",0x204,8+$L,$this->rowsNum,$i,0x0,$L);
echo $curStr;
}
}

$this->rowsNum++;
}

function excelEnd()
{
echo pack("ss",0x0A,0x00);
return;
}

function iconvToData($data)
{
return iconv($this->in_charset,'gb2312',$data);
}
}
?></count>
Copy after login

 

Statement of this Website
The content of this article is voluntarily contributed by netizens, and the copyright belongs to the original author. This site does not assume corresponding legal responsibility. If you find any content suspected of plagiarism or infringement, please contact admin@php.cn
Popular Recommendations
Popular Tutorials
More>
Latest Downloads
More>
Web Effects
Website Source Code
Website Materials
Front End Template