PHP ist eine in der Webentwicklung weit verbreitete Skriptsprache. Einige häufige Probleme, wie z. B. verstümmelte Zeichen beim Exportieren von Excel-Dateien, bereiten Entwicklern große Unannehmlichkeiten. Deshalb werden wir uns in diesem Artikel mit diesem Problem befassen und einige Lösungen anbieten, damit Sie dieses problematische Problem leicht lösen können.
Excel-Dateien werden im Binärformat gespeichert, nicht im Textformat wie HTML oder JSON. Daher müssen Sie beim Lesen und Schreiben von Excel-Dateien besonders auf deren Kodierung achten. Die gebräuchlichsten Kodierungen sind UTF-8 und GBK.
UTF-8 ist derzeit die am häufigsten verwendete Kodierungsmethode. Es unterstützt mehrere Sprachen und Zeichensätze und eignet sich besonders für internationale Anwendungen. GBK ist eine chinesische Codierungsmethode, deren Zeichensatz nur vereinfachte und traditionelle chinesische Zeichen enthält.
Wenn Sie PHP zum Exportieren von Excel-Dateien verwenden, müssen Sie sicherstellen, dass beide Skriptdateien vorhanden sind und die Excel-Datei verwenden dieselbe Codierungsmethode. Sie können die in PHP integrierte Funktion mb_convert_encoding() verwenden, um Inhalte von einer Codierung in eine andere zu konvertieren.
Wenn Sie beispielsweise UTF-8-Kodierung in PHP verwenden und Ihre Excel-Datei GBK-Kodierung verwendet, können Sie den Inhalt in GBK-Kodierung konvertieren:
$data = "Chinesisch content";
$data = mb_convert_encoding($data, "GBK", "UTF-8");
Sie können auch die Methode setCellValueExplicit() in der PHPExcel-Bibliothek verwenden, um Excel zu konvertieren Der Text in der Zelle wird auf die angegebene Kodierungsmethode festgelegt:
$objPHPExcel->getActiveSheet()->setCellValueExplicit('A1', 'Chinese content', PHPExcel_Cell_DataType::TYPE_STRING,'GBK ' );
Wenn Sie eine Excel-Datei an den Browser ausgeben, müssen Sie verwenden den richtigen HTTP-Header. Legen Sie die Kodierungsmethode fest. Sie können Folgendes hinzufügen, um sicherzustellen, dass der Browser die UTF-8-Codierung verwendet:
header('Content-Type: application/vnd.ms-excel; charset=utf-8');
header('Content-Disposition: attachment;filename="example.xls"');
header('Cache-Control: max-age=0');
Die Verwendung einiger Sonderzeichen wie Emoticons oder unkonventioneller Zeichen in Excel-Dateien kann zu unleserlichen Zeichen führen. Daher sollte darauf geachtet werden, die Verwendung dieser Zeichen beim Erstellen von Excel-Dateien zu vermeiden.
PHPExcel ist eine beliebte PHP-Bibliothek zum Lesen und Schreiben von Excel-Dateien. Es umfasst verschiedene Dateilesemethoden und Exportmethoden in mehreren Formaten, einschließlich PDF und CSV usw. Darüber hinaus verfügt PHPExcel auch über eine integrierte Kodierungskonvertierung und automatische Berechnung von Spaltenbreiten, Zellenformaten usw., was es zu einer der bevorzugten Bibliotheken für die Verarbeitung von Excel-Dateien macht.
Um beispielsweise Daten in eine Excel-Datei zu schreiben und diese in das XLS-Format zu exportieren, können Sie den folgenden Code verwenden:
require_once 'PHPExcel.php';#🎜🎜 #
$objPHPExcel = new PHPExcel();$objPHPExcel->setActiveSheetIndex(0);
$objPHPExcel->getActiveSheet()->setCellValue('B1', 'Geschlecht');
$objPHPExcel->getActiveSheet()->setCellValue( ' C1', 'Alter');
$objPHPExcel->getActiveSheet ( )->setCellValue('B2', 'M');
$objPHPExcel->getActiveSheet()->setCellValue('C2', '20');
header('Content-Disposition: attachment;filename="example.xls"');
header('Cache-Control : max-age=0');
$objWriter->save('php://output ' ; Gleichzeitig sollte darauf geachtet werden, Sonderzeichen zu vermeiden und entsprechende Bibliotheksfunktionen zur Verarbeitung von Excel-Dateien zu nutzen. Wenn Sie diese Best Practices befolgen, sollten Sie in der Lage sein, Probleme mit verstümmelten Excel-Dateien problemlos zu lösen und effiziente Excel-Dateien zu erstellen.
Das obige ist der detaillierte Inhalt vonPHP ist in Excel überall verstümmelt. Für weitere Informationen folgen Sie bitte anderen verwandten Artikeln auf der PHP chinesischen Website!