>백엔드 개발 >PHP 튜토리얼 >phpword는 템플릿 콘텐츠를 대체하고 중국어 왜곡 문자를 해결합니다.

phpword는 템플릿 콘텐츠를 대체하고 중국어 왜곡 문자를 해결합니다.

不言
不言원래의
2018-04-02 13:21:403149검색

이 글의 내용은 phpword에서 템플릿 콘텐츠를 교체하는 방법과 중국어 문자 깨짐 문제를 해결하는 방법을 공유하는 것입니다.

알겠습니다. 먼저 다운로드하세요.
다운로드 주소: https://pan.baidu.com/s/1upup2rpLTVXIdJpGi9kK6A
비밀번호: qxsd
Manual http://phpword.readthedocs.io/en/latest/search.html?q =setValue&check_keywords=yes&area=default

//공급업체를 사용하여 PHPWord 클래스를 포함
require_once "./word/PHPWord.php";
//PHPWord 개체 초기화
$PHPWord = new PHPWord();
$oMember[' m_real_name'] = "전자현미경 테스트";
$oMember['content'] = "전자현미경 테스트 요구사항 설명 전자현미경 테스트 요구사항 설명 전자현미경 테스트 요구사항 설명 전자현미경 테스트

요구사항 설명 전자현미경 테스트 요구사항 설명 전자현미경 테스트 요구 사항 설명 전자 현미경 테스트 요구 사항 설명 전자 현미경 테스트 요구 사항 설명 전자 현미경 테스트 요구 사항 설명
전자 현미경 테스트 요구 사항 설명전자 현미경 테스트 요구 사항 설명전자 현미경 테스트 요구 사항 설명전자 현미경 테스트 요구 사항 설명전자 현미경 테스트 요구 사항 설명전자 현미경 테스트 요구 사항 설명

전자현미경 테스트 요구사항 설명전자현미경 테스트 요구사항 설명전자현미경 테스트 요구사항 설명";
//템플릿 파일 로드
$document = $PHPWord->loadTemplate('./word/test/template1.docx') ;

//Word 템플릿 파일의 내용을 바꾸려면 여기에 중국어를 표시하려면 iconv 함수
$document->setValue('need_name', iconv('utf-8', 'GB2312)를 사용해야 합니다. //IGNORE', $oMember['m_real_name']));
$document->setValue( 'content',iconv('utf-8', 'GB2312//IGNORE', $oMember['content']) );

//Word 템플릿 파일의 내용을 바꾸세요. 중국어 setValue
$ document->setValue('file', "7897898998");

$filename = './word/test/를 사용하지 마세요. m-i-'.time().'.docx';

//Word 문서 저장
$document ->save($filename);

//Word 문서 다운로드 출력
//header("위치: ".$filename)


템플릿 파일에 변수 쓰기

content =》 ${content } 이 변수에 스타일을 추가하지 마세요. 그렇지 않으면 영향을 받습니다.

need_name =》 ${need_name}

file =》 ${file}

이렇게 하면 한자가 깨져 있는 것을 발견할 수 있습니다. 몇 가지 파일을 수정해야 합니다:

Word/Base.php _WriteTextStyle() 메소드 아래
$objWriter ->writeAttribute('w:eastAsia', $font); //수정 및 추가

if($font != 'Arial') { R $ Objwriter-& GTelement ('W: RFONTS'); ; writeattribute(' w:ascii', $font);
$objWriter->writeAttribute('w:hAnsi', $font);
$objWriter->writeAttribute('w:cs', $font);
$objWriter-> ;endElement();
}


PHPWord/Template.php setValue() 메소드:

if(!is_array($replace)) {// $replace = utf8_encode($replace);

$replace = iconv('gbk','utf-8', $replace); //New

}

자, 이제 문제 없습니다

출처: 2등급

관련 추천:

PHP 중국어 왜곡 문제를 해결하는 방법은 무엇입니까?


위 내용은 phpword는 템플릿 콘텐츠를 대체하고 중국어 왜곡 문자를 해결합니다.의 상세 내용입니다. 자세한 내용은 PHP 중국어 웹사이트의 기타 관련 기사를 참조하세요!

성명:
본 글의 내용은 네티즌들의 자발적인 기여로 작성되었으며, 저작권은 원저작자에게 있습니다. 본 사이트는 이에 상응하는 법적 책임을 지지 않습니다. 표절이나 침해가 의심되는 콘텐츠를 발견한 경우 admin@php.cn으로 문의하세요.