Heim >php教程 >php手册 >PHP 导出 和写入 Excel文件

PHP 导出 和写入 Excel文件

WBOYWBOYWBOYWBOYWBOYWBOYWBOYWBOYWBOYWBOYWBOYWBOYWB
WBOYWBOYWBOYWBOYWBOYWBOYWBOYWBOYWBOYWBOYWBOYWBOYWBOriginal
2016-06-13 10:58:06932Durchsuche

<?php
//  PHPExcel  需要下载  官网:http://www.codeplex.com/PHPExcel
header("Content-Type: text/html; charset=utf-8");

require_once &#39;./PHPExcel.php&#39;;
require_once &#39;./PHPExcel/IOFactory.php&#39;;
require_once &#39;./PHPExcel/Reader/Excel5.php&#39;;


/**
*	读取Excel表格
*	@param $filePath   Excel文件路径
*	@param $field		需要保存的字段		array(&#39;id&#39;,&#39;username&#39;,&#39;password&#39;)
*	@param $column		读取Excel那列		array(&#39;A&#39;,&#39;B&#39;,&#39;C&#39;)
*	@examlpe 
	
	$filePath = &#39;1.xls&#39;;
	$field = array(&#39;id&#39;, &#39;username&#39;, &#39;password&#39;);
	$column = array( &#39;A&#39;, &#39;B&#39;, &#39;C&#39;);

	readExcel($filePath,$field,$column);
*/
function readExcel($filePath,$field,$column){
	$objReader = PHPExcel_IOFactory::createReader(&#39;Excel5&#39;);//use excel2007 for 2007 format
	$objPHPExcel = $objReader->load($filePath); //$filename可以是上传的文件,或者是指定的文件
	$sheet = $objPHPExcel->getSheet(0); 
	$highestRow = $sheet->getHighestRow(); // 取得总行数 
	$highestColumn = $sheet->getHighestColumn(); // 取得总列数
	
	
	for($j=1;$j<=$highestRow;$j++)
	{
		$colData = array();
		$count = count($column);
		for($i=0;$i<$count;$i++){
			
			$colData[$field[$i]] = $objPHPExcel->getActiveSheet()->getCell($column[$i].$j)->getValue();//获取A列的值
			
		}
		
		$excelData[] = $colData;
		
	}
	
	return $excelData;
}





/**
*	导出数据为excel表格
*	@param $data    一个二维数组,结构如同从数据库查出来的数组
*	@param $title   excel的第一行标题,一个数组,如果为空则没有标题
*	@param $filename 下载的文件名
*	@examlpe 
	exportexcel($arr,array(&#39;id&#39;,&#39;账户&#39;,&#39;密码&#39;,&#39;昵称&#39;),&#39;文件名!&#39;);
*/
function exportexcel($data=array(),$title=array(),$filename=&#39;report&#39;){
	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);
	}
}
?>

 

Stellungnahme:
Der Inhalt dieses Artikels wird freiwillig von Internetnutzern beigesteuert und das Urheberrecht liegt beim ursprünglichen Autor. Diese Website übernimmt keine entsprechende rechtliche Verantwortung. Wenn Sie Inhalte finden, bei denen der Verdacht eines Plagiats oder einer Rechtsverletzung besteht, wenden Sie sich bitte an admin@php.cn
Vorheriger Artikel:PHP常用函数总结分享Nächster Artikel:hash在Coreseek 中配置bigint