本文主要是介绍PhpSpreadsheet导出商品二维码图片到Excel表格,希望对大家解决编程问题提供一定的参考价值,需要的开发者们随着小编来一起学习吧!
PhpSpreadsheet导出商品二维码图片到Excel表格
2020年06月15日 下午14:29:46
原文链接:http://note.youdao.com/noteshare?id=10f96a59f6ced3167202f0eb8b2b7811&sub=FF0FAD00558142B788636ADAEC4291A2
相信许多的phper已经接触过PhpSpreadsheet了,由于PHPExcel已经不再维护,PhpSpreadsheet是PHPExcel的下一个版本。并且PhpSpreadsheet是一个用纯PHP编写的库拥有丰富的API接口,并引入了命名空间,PSR规范等等。
- 首先是通过composer包管理工具下载phpspreadsheet拓展到laravel框架
- 使用phpspreadsheet导出图片的部分源码
// 实例化spreadsheet
$spreadsheet = new Spreadsheet();
$sheet = $spreadsheet->getActiveSheet();// 设置sheet标签的名字
$spreadsheet->getActiveSheet()->setTitle('导出表格');
$spreadsheet->getActiveSheet()->getColumnDimension('A')->setWidth(16);
$spreadsheet->getActiveSheet()->getColumnDimension('B')->setWidth(60);// 设置第一行小标题
$k = 1;
$sheet->setCellValue('A'.$k, '商品货号');
$sheet->setCellValue('B'.$k, '商品二维码');$list = $res->get($this->selectFields);
$list = $list->toArray();// 循环赋值
$k = 2;
foreach ($list as $key => $value) {$sheet->setCellValue('A'.$k, $value['itemNo']);if ($value['codes'] != null) {$value['img'] = 'https://cdn.meiguonet.com/huafei/12sdhoa221sdy97.png';$img = self::curlGet($value['img']);// 获取本地文件夹路径$dir = AppContext::getRealpathForClasspathResource("classpath:data");$file_info = pathinfo($value['img']);// 过滤非文件类型if (!empty($file_info['basename'])) {$basename = $file_info['basename'];// 进行检测文件是否存在is_dir($dir) OR mkdir($dir, 0777, true);file_put_contents($dir . $basename, $img);// 引入操作图片类$drawing[$k] = new Drawing();$drawing[$k]->setName('GoodsCode');$drawing[$k]->setDescription('GoodsCode');$drawing[$k]->setPath($dir . $basename);$drawing[$k]->setWidth(80);$drawing[$k]->setHeight(80);$drawing[$k]->setCoordinates('B'.$k);$drawing[$k]->setOffsetX(10);$drawing[$k]->setOffsetY(10);$drawing[$k]->setWorksheet($spreadsheet->getActiveSheet());}} else {$sheet->setCellValue('B'.$k, '');}// 每行高度设置$sheet->getRowDimension($k)->setRowHeight(80);$k++;
}
- 完成后导出表格
这篇关于PhpSpreadsheet导出商品二维码图片到Excel表格的文章就介绍到这儿,希望我们推荐的文章对编程师们有所帮助!