首先是读取Excel
引入PHPExcel类文件
require_once('PHPExcel-1.8/Classes/PHPExcel.php');
require_once('PHPExcel-1.8/Classes/PHPExcel/Writer/Excel2007.php');
创建新对象,并打开数据文件
$objPHPExcel = new PHPExcel();
$objReader = new PHPExcel_Reader_Excel2007;
$objPHPExcel = $objReader->load("aaa.xlsx");
开始读取数据
//选择标签页
$sheet = $objPHPExcel->getSheet(0);//第一个工作簿
//获取行数与列数,注意列数需要转换
$highestRowNum = $sheet->getHighestRow();//行数
$highestColumn = $sheet->getHighestColumn();//列数
$highestColumnNum = PHPExcel_Cell::columnIndexFromString($highestColumn);//)://由列名转化为列索引数字 'A->0,Z->25'
//取得字段,这里测试表格中的第一行为数据的字段,因此先取出用来作后面数组的键名
$filed = array();
for($i=0; $i<$highestColumnNum;$i++){
$cellName = PHPExcel_Cell::stringFromColumnIndex($i).'1';//由列数反转列名(0->'A')
$cellVal = $sheet->getCell($cellName)->getValue();//取得列内容
$filed []= $cellVal;
}
//开始取出数据并存入数组
$data = array();
$num = 1;
for($i=2;$i<=$highestRowNum;$i++){//ignore row 1
$row = array();
for($j=0; $j<$highestColumnNum;$j++){
$cellName = PHPExcel_Cell::stringFromColumnIndex($j).$i;
$cellVal = $sheet->getCell($cellName)->getValue();
$row[ $filed[$j] ] = $cellVal;
}
//print_r($row['标题']);
$data []= $row;
}
下面是写入数据库
写入数据库和读取数据库大同小异。直接贴代码
require_once('PHPExcel-1.8/Classes/PHPExcel.php');
require_once('PHPExcel-1.8/Classes/PHPExcel/Writer/Excel2007.php');
$objPHPExcel = new PHPExcel(); //实例化一个PHPExcel()对象
$objSheet = $objPHPExcel->getActiveSheet(); //选取当前的sheet对象
$objSheet->setTitle('helen'); //对当前sheet对象命名
//常规方式:利用setCellValue()填充数据
//$objSheet->setCellValue("A1","张三")->setCellValue("B1","李四"); //利用setCellValues()填充数据
$objSheet->setCellValue('A1','序号')->setCellValue('B1','晒课ID')->setCellValue('C1', '晒课访问地址')->setCellValue('D1','晒课名称')->setCellValue('E1','学科')->setCellValue('F1','版本')->setCellValue('G1','册')->setCellValue('H1','节点')->setCellValue('I1','教师')->setCellValue('J1','省')->setCellValue('K1','市')->setCellValue('L1','区县')->setCellValue('M1','学校')->setCellValue('N1','有课等级')->setCellValue('O1','是否有课堂实录')->setCellValue('P1','m3u8地址');
$sql = "select * from xiangyangshouyoukecheng where m3u8 =''";
$result = mysql_query($sql, $conn);
$j = 2;
while ($val = mysql_fetch_array($result)) {
print_r($val['nianji'] ." " . $j);
$objSheet->setCellValue('A'.$j,$val['xuhao'])->setCellValue('B'.$j,$val['saikeID'])->setCellValue('C'.$j, $val['saikeUrl'])->setCellValue('D'.$j,$val['saikeName'])->setCellValue('E'.$j,$val['xueke'])->setCellValue('F'.$j,$val['banben'])->setCellValue('G'.$j,$val['ce'])->setCellValue('H'.$j,$val['jiedian'])->setCellValue('I'.$j,$val['jiaoshi'])->setCellValue('J'.$j,$val['sheng'])->setCellValue('K'.$j,$val['shi'])->setCellValue('L'.$j,$val['qvxian'])->setCellValue('M'.$j,$val['xuexiao'])->setCellValue('N'.$j,$val['dengji'])->setCellValue('O'.$j,$val['shilu'])->setCellValue('P'.$j,$val['m3u8']);
$j ++;
}
$objWriter = PHPExcel_IOFactory::createWriter($objPHPExcel,'Excel2007'); //设定写入excel的类型
$objWriter->save('youke.xlsx'); //保存文件