Code pour exporter des données et des images à l'aide de PHPEXCEL

不言
Libérer: 2023-03-31 14:04:01
original
3262 Les gens l'ont consulté

Cet article présente principalement le code pour exporter des données et des images à l'aide de PHPEXCEL. Il a une certaine valeur de référence. Maintenant, je le partage avec tout le monde. Les amis dans le besoin peuvent s'y référer

Avant-propos

. Les images sont un objet pour Excel et ne peuvent pas être exportées vers des cellules normalement, donc tout le monde ne sait pas comment utiliser le langage PHP pour exporter ! Ci-dessous, j'expliquerai en détail comment utiliser php pour exporter des images vers Excel (cet exemple utilise le framework CI)

Remarque : Ceci est pour un projet CI, d'autres frameworks sont placés dans le bibliothèque de classes Il suffit de le mettre dans

Télécharger le code

//CI框架引入PHPExcel
$this->load->library('PHPExcel');//实例化PHPExcel类
$objPHPExcel = new PHPExcel();//图片处理类,这个才是图片导出的关键哦
$objDrawing = new PHPExcel_Worksheet_Drawing();//然后正常设置我们导出图片的代码

$objPHPExcel->createSheet(0);
$objPHPExcel->setActiveSheetIndex(0);
$currentSheet = $objPHPExcel->getActiveSheet();// 水平居中(位置很重要,建议在最初始位置,这里我举例,ABCDEFG,可以按照自己的需求定义!~)

$objPHPExcel->setActiveSheetIndex(0)->getStyle('A')->getAlignment()->setHorizontal(\PHPExcel_Style_Alignment::HORIZONTAL_CENTER);

$objPHPExcel->setActiveSheetIndex(0)->getStyle('B')->getAlignment()->setHorizontal(\PHPExcel_Style_Alignment::HORIZONTAL_CENTER);

$objPHPExcel->setActiveSheetIndex(0)->getStyle('C')->getAlignment()->setHorizontal(\PHPExcel_Style_Alignment::HORIZONTAL_CENTER);

$objPHPExcel->setActiveSheetIndex(0)->getStyle('D')->getAlignment()->setHorizontal(\PHPExcel_Style_Alignment::HORIZONTAL_CENTER);

$objPHPExcel->setActiveSheetIndex(0)->getStyle('E')->getAlignment()->setHorizontal(\PHPExcel_Style_Alignment::HORIZONTAL_CENTER);

$objPHPExcel->setActiveSheetIndex(0)->getStyle('F')->getAlignment()->setHorizontal(\PHPExcel_Style_Alignment::HORIZONTAL_CENTER);

$objPHPExcel->setActiveSheetIndex(0)->getStyle('G')->getAlignment()->setHorizontal(\PHPExcel_Style_Alignment::HORIZONTAL_CENTER);// 设置个表格宽度(这个一定要设置哦,不然图片会大厨单元格的)

$objPHPExcel->getActiveSheet()->getColumnDimension('A')->setWidth(20);
$objPHPExcel->getActiveSheet()->getColumnDimension('B')->setWidth(20);
$objPHPExcel->getActiveSheet()->getColumnDimension('C')->setWidth(20);
$objPHPExcel->getActiveSheet()->getColumnDimension('D')->setWidth(20);
$objPHPExcel->getActiveSheet()->getColumnDimension('E')->setWidth(20);
$objPHPExcel->getActiveSheet()->getColumnDimension('F')->setWidth(20);
$objPHPExcel->getActiveSheet()->getColumnDimension('G')->setWidth(20);//设置第一行标题

$currentSheet->setCellValue('A1', "序列号");
$currentSheet->setCellValue('B1', "设备ID");
$currentSheet->setCellValue('C1', "设备密码");
$currentSheet->setCellValue('D1', "设备编码");
$currentSheet->setCellValue('E1', "二维码");
$currentSheet->setCellValue('F1', "二维码");
$currentSheet->setCellValue('G1', "二维码");//定义变量初始化为2,从第二行开始

$idx          = 2;//开始循环数组数据!~

foreach ($devices as $device) {  //设置数据所在单元格,我这里把图片放在E里
  $currentSheet->setCellValue('A' . $idx, $device['sequence']);
  $currentSheet->setCellValue('B' . $idx, $device['device_unique']);
  $currentSheet->setCellValue('C' . $idx, $device['device_pwd']);
  $currentSheet->setCellValue('D' . $idx, $device['device_code']);  //设置单元格高度,这个是重点哦
  $currentSheet->getRowDimension($idx) -> setRowHeight(60)  //获取图片
  $this->load->model('Device_codes_model');
  $codes = $this->Device_codes_model->getOneCodes($id);  //开始设置图片啦~~
  $objDrawing->setPath($codes['code_file']);  // 设置图片宽度高度
  $objDrawing->setHeight(80);//照片高度
  $objDrawing->setWidth(80); //照片宽度  /*设置图片要插入的单元格*/
  $objDrawing->setCoordinates('E'.$idx);  // 图片偏移距离
  $objDrawing->setOffsetX(12);
  $objDrawing->setOffsetY(12);
  $objDrawing->setWorksheet($objPHPExcel->getActiveSheet());
  $idx++;
}//导出excel到表格

$sheetWrite = PHPExcel_IOFactory::createWriter($objPHPExcel, 'Excel2007');
Copier après la connexion

Ce qui précède est l'intégralité du contenu de cet article. J'espère qu'il sera utile à l'apprentissage de tout le monde. contenu, veuillez faire attention au site Web PHP chinois !

Recommandations associées :

Méthodes d'implémentation de trois fonctions récursives PHP et accumulation de nombres

personnalisation du framework thinkPHP5 Implémentation de le validateur

PHP télécharge des fichiers Excel pour importer des données dans la base de données MySQL

Ce qui précède est le contenu détaillé de. pour plus d'informations, suivez d'autres articles connexes sur le site Web de PHP en chinois!

Étiquettes associées:
php
source:php.cn
Déclaration de ce site Web
Le contenu de cet article est volontairement contribué par les internautes et les droits d'auteur appartiennent à l'auteur original. Ce site n'assume aucune responsabilité légale correspondante. Si vous trouvez un contenu suspecté de plagiat ou de contrefaçon, veuillez contacter admin@php.cn
Tutoriels populaires
Plus>
Derniers téléchargements
Plus>
effets Web
Code source du site Web
Matériel du site Web
Modèle frontal
À propos de nous Clause de non-responsabilité Sitemap
Site Web PHP chinois:Formation PHP en ligne sur le bien-être public,Aidez les apprenants PHP à grandir rapidement!