PHP读写Excel技术研究
使用Excel COM组件
//以下返回一个表单
$excel = new COM( "Excel.Application ") or die( "Unable to instantiate Excel ");
$workbooks=$excel-> Workbooks;
$workbook=$workbooks-> Add();
$worksheet=$workbook-> Worksheets(1);
$worksheet-> Visible=1;
$head_line=array(0, "学号 ", "姓名 " , "性别 ", "院系 ", "班级 ", "年级 ", "课程名称 ", "成绩 ");
for($excel_col=1;$excel_col <=count($head_line)-1;$excel_col++)
{
$cells=$worksheet-> Cells(1,$excel_col);
$cells-> Value=(String)$head_line[$excel_col];
}
//插入一行到表头
$excel_row_num=2; //用来控制行数
//处理MYSQL的过程就免了,$excel_row是数据库里的一行组成的数组
//将该行保存至Excel表单
for($excel_col=1;$excel_col <=count($excel_row);$excel_col++)
{
$cells=$worksheet-> Cells($excel_row_num,$excel_col);
//用的是最简单的处理方法,一个格一个格的处理,可以用RANGE属性,多读读帮助很有用的
$cells-> Value=(String)$excel_row[$excel_col-1];
}
$excel_row_num++;
}
//保存至文件
$workbook-> SaveAs( "c:\\abc.xls ");//一定要指定路径全址
$workbooks-> Close();
$excel-> Quit();
for($excel_col=1;$excel_col <=count($head_line)-1;$excel_col++)
{
$cells=$worksheet-> Cells(1,$excel_col);
$cells-> Value=(String)$head_line[$excel_col];
}
//插入一行到表头
$excel_row_num=2; //用来控制行数
//处理MYSQL的过程就免了,$excel_row是数据库里的一行组成的数组
//将该行保存至Excel表单
for($excel_col=1;$excel_col <=count($excel_row);$excel_col++)
{
$cells=$worksheet-> Cells($excel_row_num,$excel_col);
//用的是最简单的处理方法,一个格一个格的处理,可以用RANGE属性,多读读帮助很有用的
$cells-> Value=(String)$excel_row[$excel_col-1];
}
$excel_row_num++;
}
//保存至文件
$workbook-> SaveAs( "c:\\abc.xls ");//一定要指定路径全址
$workbooks-> Close();
$excel-> Quit();