Heim > Backend-Entwicklung > PHP-Problem > Was soll ich tun, wenn beim Exportieren von Excel aus PHP verstümmelte Zeichen angezeigt werden?

Was soll ich tun, wenn beim Exportieren von Excel aus PHP verstümmelte Zeichen angezeigt werden?

王林
Freigeben: 2023-03-07 09:38:02
Original
2649 Leute haben es durchsucht

Lösung für verstümmelte Zeichen beim PHP-Export nach Excel: Verwenden Sie nach der Verarbeitung der Daten und vor der Ausgabe der Excel-Datei die Funktion ob_end_clean(), um den Puffer zu löschen und den Ausgabepuffer zu schließen.

Was soll ich tun, wenn beim Exportieren von Excel aus PHP verstümmelte Zeichen angezeigt werden?

Lösung:

Verwenden Sie nach der Verarbeitung der Daten die Funktion ob_end_clean(), um sie zu verarbeiten, bevor Sie die Excel-Datei ausgeben.

ob_end_clean löscht den Puffer und schließt die Ausgabepufferung. Gibt TRUE bei Erfolg oder FALSE bei Fehler zurück.

(Empfohlenes Tutorial: Java-Video-Tutorial)

Ein Teil des Codes lautet wie folgt:

foreach ($licenseList as $key => $item) {
                    $objPHPExcel->setActiveSheetIndex(0)
                        ->setCellValue('A' . ($key + 2), $item["company_name"])
                        ->setCellValue('B' . ($key + 2), $item["user_name"])
                        ->setCellValue('C' . ($key + 2), $item["order_number"])
                        ->setCellValue('D' . ($key + 2), $item['apply_type']==2 ? 'official':'trial')
                        ->setCellValue('E' . ($key + 2), $item["license_key"])
                        ->setCellValue('F' . ($key + 2), $statusArr[$item['license_status']])->setCellValue('G' . ($key + 2), $item["user_email"])
                        ->setCellValue('H' . ($key + 2), date('y/m/d H:i:s', strtotime($item['insert_time'])));
                }

                $objPHPExcel->getActiveSheet()->setTitle('Simple');
                $objPHPExcel->setActiveSheetIndex(0);
                ob_end_clean();//解决乱码核心 就在此处添加此函数
                header('Content-Type: application/vnd.ms-excel');
                header('Content-Disposition: attachment;filename="test_list.xls"');
                header('Cache-Control: max-age=0');
                header('Cache-Control: max-age=1');
                header('Expires: Mon, 26 Jul 1997 05:00:00 GMT');
                header('Last-Modified: ' . gmdate('D, d M Y H:i:s') . ' GMT');
                header('Cache-Control: cache, must-revalidate');
                header('Pragma: public');

                $objWriter = PHPExcel_IOFactory::createWriter($objPHPExcel, 'Excel5');
                $objWriter->save('php://output');
                exit;
Nach dem Login kopieren

Verwandte Empfehlungen: php-Training

Das obige ist der detaillierte Inhalt vonWas soll ich tun, wenn beim Exportieren von Excel aus PHP verstümmelte Zeichen angezeigt werden?. Für weitere Informationen folgen Sie bitte anderen verwandten Artikeln auf der PHP chinesischen Website!

Verwandte Etiketten:
Quelle:php.cn
Erklärung dieser Website
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
Beliebte Tutorials
Mehr>
Neueste Downloads
Mehr>
Web-Effekte
Quellcode der Website
Website-Materialien
Frontend-Vorlage