发新帖

[PHP] PHPExcel-1.8

零下一度 2020-3-12 946

PHPExcel自动生成文件保存到服务器上  PHPExcel中文使用手册详解 常用的方法 :

1、所有单元格文字居中

2、所有单元格文字垂直居中

等等

$objPHPExcel->getActiveSheet()->getStyle('A1')->getAlignment()->setHorizontal(\PHPExcel_Style_Alignment::HORIZONTAL_CENTER);//所有单元格文字居中
$objPHPExcel->getActiveSheet()->getStyle('A1')->getAlignment()->setVertical(\PHPExcel_Style_Alignment::VERTICAL_CENTER);//所有单元格文字垂直居中
$objPHPExcel->getActiveSheet()->getDefaultRowDimension()->setRowHeight(20);//所有单元格(行)默认高度
$objPHPExcel->getActiveSheet()->getDefaultColumnDimension()->setWidth(20);//所有单元格(列)默认宽度
$objPHPExcel->getActiveSheet()->getRowDimension('1')->setRowHeight(30);//设置行高度
$objPHPExcel->getActiveSheet()->getColumnDimension('C')->setWidth(30);//设置列宽度
$objPHPExcel->getActiveSheet()->getStyle('A1')->getFont()->setSize(18);//设置文字大小
$objPHPExcel->getActiveSheet()->getStyle('A1')->getFont()->setBold(true);//设置是否加粗
$objPHPExcel->getActiveSheet()->getStyle('A:Z')->getAlignment()->setWrapText(TRUE); // A 到 Z 行,字符串自动换行,不会撑开单元格高度  不影响其他的设置
$objPHPExcel->getActiveSheet()->getStyle("1:100")->getAlignment()->setWrapText(TRUE); // 第1列 到 第100列 单元格 字符串自动换行,会撑开单元格高度,但这样就会影响自定默认单元格的高度,
$objPHPExcel->getActiveSheet()->getStyle("A1:A100")->getAlignment()->setWrapText(TRUE); // A1 到 A100 单元格,指定A行的 字符串自动换行 
$objPHPExcel->getActiveSheet()->getStyle("A1")->getAlignment()->setWrapText(TRUE); // A1单元格,字符串自动换行
//"\n"  指定位置换行  必须用双引号 
$objPHPExcel -> getActiveSheet() -> getDefaultStyle() -> getFont() -> setSize(10);// 设置默认字体大小
$objPHPExcel -> getActiveSheet() -> getStyle('A1') -> getFont() -> setSize(14);// 设置单元格字体大小
$objPHPExcel -> getActiveSheet() -> getStyle('A1') -> getFont()->getColor()->setRGB('FF0000');// 设置单元格字体颜色
// 设置单元格背景色
$objPHPExcel -> getActiveSheet() -> getStyle('A1') -> getFill() -> setFillType(PHPExcel_Style_Fill::FILL_SOLID);
$objPHPExcel -> getActiveSheet() -> getStyle('A1') -> getFill() -> getStartColor() -> setRGB('99CCFF');
$objPHPExcel->getActiveSheet()->getStyle('A1')->getAlignment()->setHorizontal(\PHPExcel_Style_Alignment::HORIZONTAL_CENTER);//指定单元格 设置文字居左(HORIZONTAL_LEFT,默认值)中(HORIZONTAL_CENTER)右(HORIZONTAL_RIGHT)
$objPHPExcel->getActiveSheet()->getStyle('A1')->getAlignment()->setVertical(\PHPExcel_Style_Alignment::VERTICAL_CENTER);//指定单元格 垂直居中
$objPHPExcel->getActiveSheet()->freezePane('A5');//冻结第5行以上的单元格 
$objPHPExcel->getDefaultStyle()->getFont()->setName('宋体');//设置字体
//直接在浏览器中生成下载方法
$fileName_1 = iconv("utf-8", "gb2312", $fileName[1]); // 重命名表
$objPHPExcel->setActiveSheetIndex(0); // 设置活动单指数到第一个表,所以Excel打开这是第一个表
ob_end_clean();
ob_start();
header('Content-Type: application/vnd.ms-excel;charset=UTF-8');
header("Content-Disposition: attachment;filename='$fileName_1'");
header('Cache-Control: max-age=0');
$objWriter = \PHPExcel_IOFactory::createWriter($objPHPExcel, 'Excel5');
$objWriter->save('php://output'); // 文件通过浏览器下载
//自动生成文件保存到服务器上 
$objWriter = \PHPExcel_IOFactory::createWriter($objPHPExcel, 'Excel5');
//将文件保存到服务器目录下   $_SERVER['DOCUMENT_ROOT']获取的时候服务器根目录
$fj_name = $_SERVER['DOCUMENT_ROOT'].'/Uploads/excel/'.$fileName[1];
$objWriter->save($fj_name);


//读取多种格式引用方式

if(strtoupper($ext) == '.XLSX'){ 
$objPHPExcel = new PHPExcel_Reader_Excel2007();
}
elseif (strtoupper($ext) == '.CSV'){
$objPHPExcel = new PHPExcel_Reader_CSV();
$objPHPExcel->setInputEncoding('GBK');
}
else{
$objPHPExcel = new PHPExcel_Reader_Excel5();
}


PHPExcel-1.8

最新回复 (0)
返回
零下一度
主题数
928
帖子数
0
注册排名
1