PHPExcel基本使用

                                                                         PHPExcel基本使用

1、效果

2、PHPExcel扩展

    链接:https://pan.baidu.com/s/1VPj1-CqafHkdTxed0SrvYQ
    提取码:ui2o

3、代码

public function exportAction(){
	require_once APP_PATH . '/library/PHPExcel.php';	//引入PHPEXCEL类
	$objPHPExcel = new PHPExcel();      //实例化Excel类
	//第一个sheet填入主标题
	$title = '信息';
	$first_sheet_title = '统计';		//设置为第一个
	//$objPHPExcel->createSheet();	//创建一个新的sheet[先创建再设置]
	//$objPHPExcel->setActiveSheetIndex(1);
	$objPHPExcel->getActiveSheet()->setCellValue('A1', $title.$first_sheet_title);
	//合并单元格
	$objPHPExcel->getActiveSheet()->mergeCells('A1:E1');
	//设置居中
	$objPHPExcel->getActiveSheet()->getStyle('A1:E1')->getAlignment()->setHorizontal(PHPExcel_Style_Alignment::HORIZONTAL_CENTER);
		
	//设置单元格宽
	$objPHPExcel->getActiveSheet()->getColumnDimension('A')->setWidth(6);
	$objPHPExcel->getActiveSheet()->getColumnDimension('B')->setWidth(15);
	$objPHPExcel->getActiveSheet()->getColumnDimension('C')->setWidth(15);
	$objPHPExcel->getActiveSheet()->getColumnDimension('D')->setWidth(15);
	$objPHPExcel->getActiveSheet()->getColumnDimension('E')->setWidth(15);
	//字体加粗
	$objPHPExcel->getActiveSheet()->getStyle('A1')->getFont()->setName('宋体') //字体
	->setBold(true); //字体加粗
	$objPHPExcel->getActiveSheet()->getStyle('A2')->getFont()->setName('宋体') //字体
	->setBold(true); //字体加粗
	$objPHPExcel->getActiveSheet()->getStyle('B2')->getFont()->setName('宋体') //字体
	->setBold(true); //字体加粗
	$objPHPExcel->getActiveSheet()->getStyle('C2')->getFont()->setName('宋体') //字体
	->setBold(true); //字体加粗
	$objPHPExcel->getActiveSheet()->getStyle('D2')->getFont()->setName('宋体') //字体
	->setBold(true); //字体加粗
	$objPHPExcel->getActiveSheet()->getStyle('E2')->getFont()->setName('宋体') //字体
	->setBold(true); //字体加粗
	//第一sheet入职
	$array = array(
			array("序号","部门","职位","姓名",'入职时间','数字'),
	);

	for ($x = 0;$x<10; $x++){	//生成模拟数据
		$docArray[] = ['id'=>1, 'department'=>'运营部', 'post_title'=>'美文', 'real_name'=>'张三', 'start_date'=>'2019-04-12 13:12:12','number'=>'314159265312234435'];
	}
		
	$data = array();// A-N
	if(is_array($docArray)){
		foreach($docArray as $key=>$value){
			$data[$key][]=$value['id'];
			$data[$key][]=$value['department'];
			$data[$key][]=$value['post_title'];
			$data[$key][]=$value['real_name'];
			$data[$key][]=$value['start_date'];
			$data[$key][]=$value['number'];
		}
	}
	//合并title
	$new_arr = array_merge($array,$data);
		
	//写入到每一行
	$k = 1;
	$ZiMU = [ 'A'=>0, 'B'=>1, 'C'=>2, 'D'=>3, 'E'=>4, 'F'=>5, 'G'=>6,
			'H'=>7, 'I'=>8, 'J'=>9, 'K'=>10, 'L'=>11, 'M'=>12, 'N'=>13
	];
	foreach ($new_arr as $val){
		$k = $k+1;
			
		$objPHPExcel->getactivesheet()->setcellvalue('A'.$k, $val[0]);//第A列 第$k行,值
		$objPHPExcel->getactivesheet()->setcellvalue('B'.$k, $val[1]);
		$objPHPExcel->getactivesheet()->setcellvalue('C'.$k, $val[3]);
		$objPHPExcel->getactivesheet()->setcellvalue('D'.$k, $val[4]);
		
		//$objPHPExcel->getactivesheet()->setcellvalue('E'.$k, $val[5]);
		$objPHPExcel->getActiveSheet()->setCellValueExplicit('E'.$k, $val[5], PHPExcel_Cell_DataType::TYPE_STRING);	//字符串显示
	}
		
	//最后通过浏览器输出
	$fn =	 "入职信息(".date("Y.m.d").").xls";	//要保存的文件名
	header('Content-Type: application/vnd.ms-excel; charset=utf-8');
	header("Content-Disposition: attachment;filename=$fn");
	header('Cache-Control: max-age=0');
	$objWriter = PHPExcel_IOFactory::createWriter($objPHPExcel, 'Excel5');
	$objWriter->save('php://output');
	exit;
}

 

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值