thinkphp5数据库导入Excel表格

$data=$order_info;
//$data 你要下载谁 就去查谁
// $data= Db::name('order_info')
// ->field('consignee,tel,id_card')
// ->select();

//定义表名称
$name = $activity_name;

//Vendor("PHPExcel.Classes.PHPExcel"); ,
include('./PHPExcel/PHPExcel.php');
$excel = new \PHPExcel();

$excel->getActiveSheet()->getDefaultRowDimension()->setRowHeight(25);
// 第一行的默认高度
$excel->getActiveSheet()->getRowDimension('1')->setRowHeight(30);
// 垂直居中
$excel->getActiveSheet()->getDefaultStyle()->getAlignment()->setVertical(\PHPExcel_Style_Alignment::VERTICAL_CENTER);
// 设置水平居中
$excel->getActiveSheet()->getDefaultStyle()->getAlignment()->setHorizontal(\PHPExcel_Style_Alignment::HORIZONTAL_CENTER);


//定义列数,与excel中的列的命名一样
$letter = array('A', 'B', 'C', 'D','E');

//设置表格宽度
$tablestyle = array(

array('width'=>'25'),
array('width'=>'25'),
array('width'=>'25'),
array('width'=>'35'),
array('width'=>'35'),

);
//定义表头信息
$tableheader = array('姓名', '电话', '身份证','角色','票种');


for ($i = 0; $i < count($tableheader); $i++)
{
$excel->getActiveSheet()->setCellValue("$letter[$i]1", "$tableheader[$i]");
$excel->getActiveSheet()->getColumnDimension($letter[$i])->setWidth($tablestyle[$i]['width']);
}

//写入信息到excel
for ($i = 2; $i <= count($data) + 1; $i++)
{

$j = 0;
foreach ($data[$i - 2] as $key => $value)
{

$excel->getActiveSheet()->setCellValue("$letter[$j]$i", "$value");
$j++;


}
}

//创建Excel输入对象
$write = new \PHPExcel_Writer_Excel5($excel);

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="'.$name.'".xls"');
header("Content-Transfer-Encoding:binary");
$write->save('php://output');

猜你喜欢

转载自www.cnblogs.com/chentailin/p/9015755.html