phpexcel 插件上传在common/plugin下,
下面是调用类
/**
*导出excel表格
*$data 需要输出数组
*$save 保存类型,1为直接浏览器输出,2为保存服务器 默认为1
*/
function toexecl($data, $filename, $save = "1"){
/* @func 引入类 */
$i = 0;
yzm_xxx::load_common('plugin/PHPExcel.php');
$obpe = new PHPExcel();
$obpe_pro = $obpe->getProperties();
$obpe_pro->setCreator('沉默的羔羊')//设置创建者
->setLastModifiedBy(date("Y-m-d H:i:s"))//设置时间
->setTitle($filename)//设置标题
->setSubject('')//设置备注
->setDexxxion($filename)//设置描述
->setKeywords('短视频日志|高阳|导出')//设置关键字 | 标记
->setCategory('');//设置类别
foreach($data as $key=>$v){
if($i <> 0 ){
$obpe->createSheet();
}
$obpe->setactivesheetindex($i);
$obpe->getActiveSheet()->setTitle($v['sheetname']);
//输出表头
$k = 'A';
foreach($v['header'] as $h){
$obpe->getactivesheet()->setcellvalue($k.'1', $h);
$k++;
}
//输出内容
$ii=2;
foreach($v['data'] as $k=>$dd){
if($i == 2 or $i == 4){
$obpe->getactivesheet()->setcellvalue('A'.$ii, $k);
$obpe->getactivesheet()->setcellvalue('B'.$ii, $dd);
$ii++;
}else{
$k=$k+2;
foreach($v['key'] as $ks=>$key){
$obpe->getactivesheet()->setcellvalue($ks.$k, $dd[$key]);
}
}
}
$i++;
}
//写入类容
$obwrite = PHPExcel_IOFactory::createWriter($obpe, 'Excel5');
if($save == '1'){
header('Pragma: public');
header('Expires: 0');
header('Cache-Control:must-revalidate,post-check=0,pre-check=0');
header('Content-Type:application/force-download');
header('Content-Type:application/vnd.ms-execl');
header('Content-Type:application/octet-stream');
header('Content-Type:application/download');
header("Content-Disposition:attachment;filename=".$filename.".xls");
header('Content-Transfer-Encoding:binary');
$obwrite->save('php://output');
}
if($save == '2'){
$obwrite->save($filename.".xls");
}
}调用方法
$exceldata = array(
array(
'sheetname'=>$filename,
'header'=>array('编号','货物名称','规格','采购数量','采购日期','采购人','到货日期','生产日期','保质期长','收货点货人'),
'key'=>array('A'=>'purchase_id','B'=>'name','C'=>'spec','D'=>'purchase_quantity','E'=>'purchase_date','F'=>'purchaser','G'=>'arrival_date','H'=>'production_batch','I'=>'shelf_life_months','J'=>'receiver'),
'data'=>$dataout
)
);
//print_r($data);
$this->toexecl($exceldata,$filename);附件上传不了,需要的私信,留邮箱我到时候发吧