thinpphp5.1使用excel导入数据

 注意点:

1:还是那个问题  tp5.1废除了助手函数vendor和import函数  我用的require原始的引入

2:我之前用封装导入方法 但是导出的表列宽不够 导致数据在excel表格中得自己调整宽度才显示正确 比如2018-08-08 打开文件变成######,所以我还是用的phpexcel插件

下面是代码:

$list = Db::name('user')->select();//导出的数据
$path = dirname(__FILE__); //找到当前脚本所在路径
require'../extend/PHPExcel/PHPExcel.php';
$PHPExcel = new \PHPExcel();
$PHPSheet = $PHPExcel->getActiveSheet();
$PHPSheet->setTitle("demo"); //给当前活动sheet设置名称
$PHPSheet->setCellValue("A1", "快递编号")//导出的表头
         ->setCellValue("B1", "日期")
         ->setCellValue("C1", "快递邮费")
         ->setCellValue("D1", "对账结果")
         ->setCellValue("E1", "差异的运费")
         ->setCellValue("F1", "发货单号备注")
         ->setCellValue("G1", "配送中心")
         ->setCellValue("H1", "快递公司");
$PHPSheet->getColumnDimension('A')->setWidth(20);//设置列宽度
$PHPSheet->getColumnDimension('B')->setWidth(20);
$PHPSheet->getColumnDimension('C')->setWidth(20);
$PHPSheet->getColumnDimension('D')->setWidth(20);
$PHPSheet->getColumnDimension('E')->setWidth(20);
$PHPSheet->getColumnDimension('F')->setWidth(45);
$PHPSheet->getColumnDimension('G')->setWidth(20);
$PHPSheet->getColumnDimension('H')->setWidth(20);
$i = 2;
foreach($list as $data){//数据表对应字段
    $PHPSheet->setCellValue("A" . $i, $data['expressNum'])
             ->setCellValue("B" . $i, date("Y-m-d",$data['createTime']))
             ->setCellValue("C" . $i, $data['ps_fee'])
             ->setCellValue("D" . $i, $data['result'])
             ->setCellValue("E" . $i, $data['differential'])
             ->setCellValue("F" . $i, $data['remark'])
             ->setCellValue("G" . $i, $data['companyName'])
             ->setCellValue("H" . $i, $data['kdname']);
    $i++;	
}
$PHPWriter = \PHPExcel_IOFactory::createWriter($PHPExcel, "Excel2007");
header('Content-Disposition: attachment;filename="表单数据.xlsx"');
header('Content-Type: application/vnd.openxmlformats-officedocument.spreadsheetml.sheet');
$PHPWriter->save("php://output"); //表示在$path路径下面生成demo.xlsx文件

 

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值