安装扩展之类的就不说了,直接说怎么使用
读取数据
//首先读取文件 一般这样就可以了
$obj = PHPExcel_IOFactory::Load($file);
//不过有时候会执行到这,卡住运行不下去,可能是在文件里出现了特殊的符号之类的问题,使用下面的
$inputFileType = PHPExcel_IOFactory::identify($file);
$objReader = PHPExcel_IOFactory::createReader($inputFileType);
$objReader->setReadDataOnly(true);
$obj = $objReader->Load($file);
//获取表格的数量
$Sheetcount = $obj->getSheetCount();
//读取表格数据 序号从0开始
$Info = $obj->getSheet(1);
//获取单元表的数据行数
$rows = $Info->getHighestRow();
//获取单元格数据 横纵坐标
//getValue 获取值 不是最终展示的值,可能是公式之类,
//getFormattedValue 获取的是最终值 string 类型的
//getCalculatedValue 获取的是最终值 最终数据的类型
$data=$Info->getCell('A' . 1)->getValue();
导入数据
//一开始的操作 啦啦啦一大堆
$obj = new \PHPExcel();
$obj->getProperties()->setCreator(''); //设置创建者
$obj->getProperties()->setLastModifiedBy(''); //设置修改者
$obj->getProperties()->setTitle(''); //设置标题
$obj->getProperties()->setSubject(''); //设置主题
$obj->getProperties()->setDescription(''); //设置描述
$obj->getProperties()->setKeywords(''); //设置关键词
$obj->getProperties()->setCategory(''); //设置类型
//创建一张工作表
//需要需要从0开始,不能跳着来
$obj->setActiveSheetIndex(0);
//工作表名字
$obj->getActiveSheet()->setTitle('第一张表');
//设置数据 也是横纵坐标
$obj->getActiveSheet()->setCellValue('A'.'1', $value);
//单元格长度 整个A列
$obj->getActiveSheet()->getColumnDimension('A')->setWidth(20);
//设置边框
$border = array(
'borders' => array(
'allborders' => array(//设置全部边框
'style' => \PHPExcel_Style_Border::BORDER_THIN //粗细
),
),
);
//初始坐标加最终坐标
$obj->getActiveSheet()->getStyle('A1:W20')->applyFromArray($border);
//自动换行 初始坐标加最终坐标
$obj->getActiveSheet()->getStyle("A1:W1")->getAlignment()->setWrapText(TRUE);
$obj->getActiveSheet()->getStyle('A1:W1')->getAlignment()->setVertical(PHPExcel_Style_Alignment::VERTICAL_CENTER);
//加粗
$obj->getActiveSheet()->getStyle('A1:W1')->getFont()->setBold(true);
//填充颜色
$obj->getActiveSheet()->getStyle('A1:W1')->getFill()->setFillType(PHPExcel_Style_Fill::FILL_SOLID);
$obj->getActiveSheet()->getStyle('A1:W1')->getFill()->getStartColor()->setARGB('87CEFA');
//最后导出数据
//清空缓存区,不知道需要不需要
ob_clean();
//一堆header头 文件名
header('Content-Type: application/vnd.openxmlformats-officedocument.spreadsheetml.sheet');
header('Content-Disposition: attachment;filename="' . $file . '.xlsx');
header('Cache-Control: max-age=1');
//最后
$objWriter = \PHPExcel_IOFactory::createWriter($obj, 'Excel2007');
$objWriter->save('php://output');
exit;
//这个是直接下载的,不保存,也可以保存在本地,然后返回地址下载