Heim  >  Artikel  >  Backend-Entwicklung  >  So legen Sie die Tabellenkodierung in PHP Excel fest

So legen Sie die Tabellenkodierung in PHP Excel fest

藏色散人
藏色散人Original
2021-07-15 09:11:462451Durchsuche

So legen Sie die Tabellenkodierung in PHP Excel fest: Laden Sie zuerst PHPExcel herunter, erstellen Sie dann eine Excel-Datei und legen Sie schließlich die Kodierung über die Methode „function gbkToUtf8($gbk){...}“ fest und lösen Sie das verstümmelte Problem.

So legen Sie die Tabellenkodierung in PHP Excel fest

Die Betriebsumgebung dieses Artikels: Windows 7-System, PHP-Version 7.1, DELL G3-Computer

Wie stelle ich die Tabellencodierung in PHP Excel ein?

PHPExcel-Export-Excel-Tabelle und Lösung für chinesische verstümmelte Zeichen

Das habe ich für meine eigene Lektüre geschrieben. Es wird ständig aktualisiert. Die gefundenen Personen sind dazu bestimmt ~

GitHub-Download-Adresse: https://. github.com/ PHPOffice/PHPExcel

<?php
require_once &#39;./PHPExcel/Classes/PHPExcel.php&#39;;
//创建一个EXCEL
$objPHPExcel = new PHPExcel(); 
//设置当前的sheet
$objPHPExcel->setActiveSheetIndex(0);
//设置sheet的name
$getActiveSheet = $objPHPExcel->getActiveSheet();
$getActiveSheet->setTitle(&#39;Sheet名称&#39;);
//设置单元格的值
$getActiveSheet->setCellValue(&#39;A1&#39;, &#39;姓名&#39;);
$getActiveSheet->setCellValue(&#39;B1&#39;, &#39;部门&#39;);
$getActiveSheet->setCellValue(&#39;C1&#39;, &#39;工资&#39;);
//合并单元格
$getActiveSheet->mergeCells(&#39;C1:D1&#39;);//横向合并 纵向同理
//设置单元格填充颜色
$getActiveSheet->getStyle(&#39;A1&#39;)->getFill()->setFillType(PHPExcel_Style_Fill::FILL_SOLID);
$getActiveSheet->getStyle(&#39;A1&#39;)->getFill()->getStartColor()->setARGB(&#39;000099FF&#39;);
//设置字体样式
$getActiveSheet->setCellValue(&#39;A2&#39;, setMyFontStyle(&#39;张三&#39;));
$getActiveSheet->setCellValue(&#39;B2&#39;, setMyFontStyle(&#39;开发部&#39;));
$getActiveSheet->setCellValue(&#39;C2&#39;, setMyFontStyle(&#39;9999&#39;));
//设置文字水平居左(HORIZONTAL_LEFT,默认)、中(HORIZONTAL_CENTER)、右(HORIZONTAL_RIGHT)
$getActiveSheet->getStyle(&#39;A1&#39;)->getAlignment()->setHorizontal(PHPExcel_Style_Alignment::HORIZONTAL_CENTER);
//设置文字垂直居中
$getActiveSheet->getStyle(&#39;A1&#39;)->getAlignment()->setVertical(PHPExcel_Style_Alignment::VERTICAL_CENTER);
//设置自适应宽度
$letter = [&#39;A&#39;, &#39;B&#39;, &#39;C&#39;];
for($z=0;$z<count($letter);$z++){
$getActiveSheet->getColumnDimension($letter[$z])->setAutoSize(true);
}
//设置固定宽度
$getActiveSheet->getColumnDimension(&#39;A&#39;)->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(&#39;Content-Type:text/html;Charset=utf-8;&#39;);
header(&#39;Content-Disposition:attachment;filename=表格.xlsx"&#39;);
header("Content-Transfer-Encoding:binary");
$objWriter = PHPExcel_IOFactory::createWriter($objPHPExcel, &#39;Excel2007&#39;);
$objWriter->save(&#39;php://output&#39;);
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(&#39;GB2312&#39;, &#39;UTF-8&#39;, $gbk);
return $utf8;
}
//解决导出中文乱码,按需使用
function utf8ToGbk($utf8){
$gbk = iconv(&#39;UTF-8&#39;, &#39;GB2312&#39;, $utf8);
return $gbk;
}

Empfohlenes Lernen: „PHP-Video-Tutorial

Das obige ist der detaillierte Inhalt vonSo legen Sie die Tabellenkodierung in PHP Excel fest. Für weitere Informationen folgen Sie bitte anderen verwandten Artikeln auf der PHP chinesischen Website!

Stellungnahme:
Der Inhalt dieses Artikels wird freiwillig von Internetnutzern beigesteuert und das Urheberrecht liegt beim ursprünglichen Autor. Diese Website übernimmt keine entsprechende rechtliche Verantwortung. Wenn Sie Inhalte finden, bei denen der Verdacht eines Plagiats oder einer Rechtsverletzung besteht, wenden Sie sich bitte an admin@php.cn