Comment définir l'encodage du tableau dans php Excel : téléchargez d'abord PHPExcel ; puis créez un EXCEL ; enfin définissez l'encodage et résolvez le problème tronqué via la méthode "function gbkToUtf8($gbk){...}".
L'environnement d'exploitation de cet article : système Windows 7, PHP version 7.1, ordinateur DELL G3
Comment définir l'encodage des tableaux dans php excel ?
Tableau Excel d'exportation PHPExcel et solution aux caractères chinois tronqués
C'est ce que j'ai écrit pour ma propre lecture. Il sera mis à jour en permanence. Ceux qui peuvent être trouvés sont des personnes destinées ~
Adresse de téléchargement GitHub : https://. github.com/ PHPOffice/PHPExcel
<?php require_once './PHPExcel/Classes/PHPExcel.php'; //创建一个EXCEL $objPHPExcel = new PHPExcel(); //设置当前的sheet $objPHPExcel->setActiveSheetIndex(0); //设置sheet的name $getActiveSheet = $objPHPExcel->getActiveSheet(); $getActiveSheet->setTitle('Sheet名称'); //设置单元格的值 $getActiveSheet->setCellValue('A1', '姓名'); $getActiveSheet->setCellValue('B1', '部门'); $getActiveSheet->setCellValue('C1', '工资'); //合并单元格 $getActiveSheet->mergeCells('C1:D1');//横向合并 纵向同理 //设置单元格填充颜色 $getActiveSheet->getStyle('A1')->getFill()->setFillType(PHPExcel_Style_Fill::FILL_SOLID); $getActiveSheet->getStyle('A1')->getFill()->getStartColor()->setARGB('000099FF'); //设置字体样式 $getActiveSheet->setCellValue('A2', setMyFontStyle('张三')); $getActiveSheet->setCellValue('B2', setMyFontStyle('开发部')); $getActiveSheet->setCellValue('C2', setMyFontStyle('9999')); //设置文字水平居左(HORIZONTAL_LEFT,默认)、中(HORIZONTAL_CENTER)、右(HORIZONTAL_RIGHT) $getActiveSheet->getStyle('A1')->getAlignment()->setHorizontal(PHPExcel_Style_Alignment::HORIZONTAL_CENTER); //设置文字垂直居中 $getActiveSheet->getStyle('A1')->getAlignment()->setVertical(PHPExcel_Style_Alignment::VERTICAL_CENTER); //设置自适应宽度 $letter = ['A', 'B', 'C']; for($z=0;$z<count($letter);$z++){ $getActiveSheet->getColumnDimension($letter[$z])->setAutoSize(true); } //设置固定宽度 $getActiveSheet->getColumnDimension('A')->setWidth(20); //清除缓冲区,不加这句会报错 ob_end_clean(); //输出 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-Type:text/html;Charset=utf-8;'); header('Content-Disposition:attachment;filename=表格.xlsx"'); header("Content-Transfer-Encoding:binary"); $objWriter = PHPExcel_IOFactory::createWriter($objPHPExcel, 'Excel2007'); $objWriter->save('php://output'); exit; //设置字体样式 function setMyFontStyle($text){ $objRichText = new PHPExcel_RichText(); $objRichText->createText(""); $objPayable = $objRichText->createTextRun($text); $objPayable->getFont()->setBold(true); $objPayable->getFont()->setItalic(true); $objPayable->getFont()->setColor( new PHPExcel_Style_Color(PHPExcel_Style_Color::COLOR_RED ) ); return $objRichText; } //解决导出中文乱码,按需使用 function gbkToUtf8($gbk){ $utf8 = iconv('GB2312', 'UTF-8', $gbk); return $utf8; } //解决导出中文乱码,按需使用 function utf8ToGbk($utf8){ $gbk = iconv('UTF-8', 'GB2312', $utf8); return $gbk; }
Apprentissage recommandé : "Tutoriel vidéo PHP"
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!