PHP Excel Reader로 내보낸 중국어 문자 깨짐 해결 방법: 1. 덤프 기능을 사용하지 않는 경우 [_defaultEncoding] 변수를 수정하여 문제를 해결할 수 있습니다. 2. 덤프 기능을 사용하여 Excel을 내보내는 경우, 문제를 해결하려면 htmlentities 함수를 수정해야 합니다.
PHP Excel Reader에서 내보낸 한자가 깨졌을 때 해결하는 방법:
PHP Excel Reader2.21을 다운로드한 후 PHP 환경 구성의 실행 디렉터리에 압축을 풀고 먼저 example.php를 엽니다. 보자
1$data=new Spreadsheet_Excel_Reader("example.xls");
이 문은 Excel을 내보내는 PHP의 인스턴스를 만드는 데 사용됩니다. excel_reader2.php 파일에서 이 PHP Excel Reader 클래스의 생성자 프로토타입을 찾을 수 있습니다.
Spreadsheet_Excel_Reader($file='',$store_extended_info=true,$outputEncoding='')
이름에서 알 수 있듯이 PHP Excel Reader는 인코딩을 내보냅니다. Excel 파일 내용의 유형은 $outputEncoding
매개변수를 통해 지정됩니다. PHP Excel Reader에서 내보낸 Excel의 기본 인코딩 유형은 _defaultEncoding
변수를 통해 설정됩니다. UTF-8이므로 일반적으로 PHP Excel Reader에서 Excel 중국어 왜곡 문자를 내보내는 방법에는 두 가지가 있습니다. $outputEncoding
参数来指定的,默认的php excel reader导出excel的编码类型是通过变量_defaultEncoding
设定,默认为UTF-8,所以通常解决php excel reader导出excel中文乱码有两种方法。
php excel reader导出excel中文乱码解决方法一:
1$data=new Spreadsheet_Excel_Reader("example.xls");
改为
1$data=new Spreadsheet_Excel_Reader("example.xls",true,"GB2312");
php excel reader导出excel中文乱码解决方法二:
打开excel_reader2.php,找到
1var$_defaultEncoding="UTF-8";
修改为
1var$_defaultEncoding="GB2312";
即可解决php excel reader导出excel乱码的问题。
那为什么通过上述教程修改后,如果在example.xls中添加中文后example.php仍然输出乱码呢?
这是因为其调用了php excel reader类中的dump
函数,此函数是用来将导出的excel文件内容以HTML的形式输出,而问题恰恰是由于这个函数中htmlentities函数作怪,htmlentities函数是用来把字符转换为HTML实体的,原型如下
htmlentities(string,quotestyle,character-set)
其默认的字符集为ISO-8859-1,所以当使用php excel reader的dump函数导出excel出现中文乱码时,
解决方法一:
1$val=htmlentities($val);
修改为
1$val=htmlentities($val,ENT_COMPAT,"GB2312");
解决方法二:
1$val=htmlentities($val);
修改为
1$val=htmlspecialchars($val);
php excel reader导出excel中文乱码解决方法总结
如果不使用dump函数导出excel,可以通过修改_defaultEncoding
php excel reader는 중국어 잘못된 코드로 Excel을 내보냅니다. 해결 방법 1: rrreee🎜로 변경되었습니다. 해결 방법 2: 🎜
dump
함수를 호출하기 때문입니다. 이 함수는 내보낸 Excel 파일의 내용을 HTML 형식으로 출력하는 데 사용됩니다. 이 함수에서 htmlentities가 문제를 일으키고 있습니다. htmlentities 함수는 문자를 HTML 엔터티로 변환하는 데 사용됩니다. 프로토타입은 다음과 같습니다🎜rrreee🎜 기본 문자 세트는 ISO-8859-1이므로 PHP의 덤프 함수를 사용할 때 excel 리더에서 Excel을 내보내면 중국어 이상한 문자가 나타납니다.🎜 🎜🎜해결책 1: 🎜🎜rrreee🎜 수정됨 🎜rrreee🎜🎜해결책 2: 🎜🎜rrreee🎜 수정됨 🎜rrreee🎜🎜php excel 리더 내보내기 excel 중국어 깨짐 해결 방법 요약 🎜 🎜🎜 덤프 기능을 사용하여 Excel을 내보내지 않는 경우 _defaultEncoding
변수를 수정하거나 새로운 Spreadsheet_Excel_Reader(excel 파일 이름, true, "GB2312")를 전달하여 잘못된 Excel 내보내기 문제를 해결할 수 있습니다. ; 덤프 기능을 사용하여 Excel을 HTML로 내보내는 경우 htmlentities 기능을 수정해야 합니다. 잘못된 Excel 파일을 내보내는 문제를 해결합니다. 🎜🎜🎜관련 학습 권장 사항: 🎜초보부터 마스터까지 PHP 프로그래밍🎜🎜🎜위 내용은 PHP Excel Reader에서 내보낸 중국어 왜곡된 한자를 해결하는 방법은 무엇입니까?의 상세 내용입니다. 자세한 내용은 PHP 중국어 웹사이트의 기타 관련 기사를 참조하세요!