Home > Backend Development > PHP Tutorial > Export assessment statistics php export Excelde application_PHP tutorial

Export assessment statistics php export Excelde application_PHP tutorial

WBOY
Release: 2016-07-21 14:53:26
Original
795 people have browsed it

//Export assessment statistics

	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

The following is the excel class 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($string);$i++)
{
$curStr = $string[$i];
$curStr = $this->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);
}
}
?>
Copy after login

www.bkjia.comtruehttp: //www.bkjia.com/PHPjc/371395.htmlTechArticle// Export assessment statistics function daochu(){require_once 'outExcel.class.php';header(Content-Type : application/vnd.ms-excel;charset=utf-8);$kaoheCode = $_GET['kaoheCode'];$dao = new Pe...
source:php.cn
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 Tutorials
More>
Latest Downloads
More>
Web Effects
Website Source Code
Website Materials
Front End Template