日韩性视频-久久久蜜桃-www中文字幕-在线中文字幕av-亚洲欧美一区二区三区四区-撸久久-香蕉视频一区-久久无码精品丰满人妻-国产高潮av-激情福利社-日韩av网址大全-国产精品久久999-日本五十路在线-性欧美在线-久久99精品波多结衣一区-男女午夜免费视频-黑人极品ⅴideos精品欧美棵-人人妻人人澡人人爽精品欧美一区-日韩一区在线看-欧美a级在线免费观看

歡迎訪問 生活随笔!

生活随笔

當前位置: 首頁 > 编程资源 > 编程问答 >内容正文

编程问答

PhpSpreadsheet 学习和使用

發布時間:2023/12/29 编程问答 28 豆豆
生活随笔 收集整理的這篇文章主要介紹了 PhpSpreadsheet 学习和使用 小編覺得挺不錯的,現在分享給大家,幫大家做個參考.

1、安裝

?composer require phpoffice/phpspreadsheet

2、 use PhpOffice\PhpSpreadsheet\Spreadsheet; use PhpOffice\PhpSpreadsheet\Writer\Xlsx; use PhpOffice\PhpSpreadsheet\Style\Alignment; use PhpOffice\PhpSpreadsheet\Style\Border; use PhpOffice\PhpSpreadsheet\Style\Font; use PhpOffice\PhpSpreadsheet\Style\Color; use PhpOffice\PhpSpreadsheet\Style\Fill; use PhpOffice\PhpSpreadsheet\IOFactory; 3、數據庫導出到excel表中 //導出測試 public function daochu() {$spreadsheet = new Spreadsheet();$worksheet = $spreadsheet->getActiveSheet();//設置工作表標題名稱$worksheet->setTitle('車型品牌');//表頭//設置單元格內容$worksheet->setCellValueByColumnAndRow(1, 1, '車型品牌表');$worksheet->setCellValueByColumnAndRow(1, 2, 'ID');$worksheet->setCellValueByColumnAndRow(2, 2, '品牌名');$worksheet->setCellValueByColumnAndRow(3, 2, '圖片');$worksheet->setCellValueByColumnAndRow(4, 2, '狀態');//合并單元格$worksheet->mergeCells('A1:D1');//字體設置$styleArray = ['font' => ['bold' => true, //字體加粗'color' => [ 'rgb' => 'FF6A6A' ], //字體顏色'strikethrough' => true, //刪除線'italic' => true, //傾斜'underline' => Font::UNDERLINE_DOUBLE,],'alignment' => ['horizontal' => Alignment::HORIZONTAL_CENTER,],];//設置單元格樣式$worksheet->getStyle('A1')->applyFromArray($styleArray)->getFont()->setSize(28);$worksheet->getStyle('A2:D2')->applyFromArray($styleArray)->getFont()->setSize(14);//設置字體顏色//$worksheet->getStyle('B2')->getFont()->getColor()->applyFromArray(['rgb' => 'C0FF3E']);//背景色//$worksheet->getStyle('B2')->getFill()->applyFromArray( [ 'fillType' => Fill::FILL_GRADIENT_LINEAR, 'rotation' => 0, 'startColor' => [ 'rgb' => '000000' ], 'endColor' => [ 'argb' => 'FFFFFFFF' ] ] );//設置單元格 自動寬度顯示$spreadsheet->getActiveSheet()->getColumnDimension('C')->setAutoSize(true);$rows = Db::name('cartype_logo')->select();$len = Db::name('cartype_logo')->count();$j = 0;for ($i=0; $i < $len; $i++) {$j = $i + 3; //從表格第3行開始$worksheet->setCellValueByColumnAndRow(1, $j, $rows[$i]['logo_id']);$worksheet->setCellValueByColumnAndRow(2, $j, $rows[$i]['logo_name']);$worksheet->setCellValueByColumnAndRow(3, $j, $rows[$i]['logo_img']);$worksheet->setCellValueByColumnAndRow(4, $j, $rows[$i]['status']);}$styleArrayBody = ['borders' => ['allBorders' => ['borderStyle' => Border::BORDER_THIN,'color' => ['argb' => '666666'],],],'alignment' => ['horizontal' => Alignment::HORIZONTAL_CENTER,],];$total_rows = $len + 2;//添加所有邊框/居中$worksheet->getStyle('A1:D'.$total_rows)->applyFromArray($styleArrayBody);$filename = '品牌表.xlsx';header('Content-Type: application/vnd.openxmlformats-officedocument.spreadsheetml.sheet');header('Content-Disposition: attachment;filename="'.$filename.'"');header('Cache-Control: max-age=0');$writer = IOFactory::createWriter($spreadsheet, 'Xlsx');$writer->save('php://output'); } 3、excel導入數據庫表匯中 //導入測試 public function daoru() {$reader = IOFactory::createReader('Xls');$reader->setReadDataOnly(TRUE);$spreadsheet = $reader->load('C:\Users\Administrator\Desktop\logo.xls'); //載入excel表格$worksheet = $spreadsheet->getActiveSheet();$highestRow = $worksheet->getHighestRow(); // 總行數$lines = $highestRow - 1;if ($lines <= 0) {exit('Excel表格中沒有數據');}$new = [];for ($row = 2; $row <= $highestRow; ++$row) {$new_logos = $worksheet->getCellByColumnAndRow(1, $row)->getValue(); //品牌名$new_png = $worksheet->getCellByColumnAndRow(2, $row)->getValue(); //圖片地址$new[] = ['logo_name'=> $new_logos,'logo_img'=>$new_png];} $new = []; for ($row = 2; $row <= $highestRow; ++$row) {$new_logos = $worksheet->getCellByColumnAndRow(1, $row)->getValue(); //品牌名$new_png = $worksheet->getCellByColumnAndRow(2, $row)->getValue(); //圖片地址$new[] = ['logo_name'=> $new_logos,'logo_img'=>$new_png];} foreach ($new as $k => $v) {$data['logo_name'] = $v[0];$data['logo_img'] = $v[1];//var_dump($data); die;Db::name('cartype_logo')->insert($data);}

echo 'ok';

}

?

?

?

?

?

總結

以上是生活随笔為你收集整理的PhpSpreadsheet 学习和使用的全部內容,希望文章能夠幫你解決所遇到的問題。

如果覺得生活随笔網站內容還不錯,歡迎將生活随笔推薦給好友。