2017-01-23 32 views
0

Привет У меня проблема с PHP-словом. Когда я использую акцентированные символы в моем файле, файл поврежден и невозможно открыть.Phpword и символы с акцентом

<?php 
require_once 'PHPWord.php'; 
$PHPWord = new PHPWord(); 

$document = $PHPWord->loadTemplate('Documents/LM.docx'); 
$document->setValue('Value1', "example with accent évian"); 
$document->save('Documents/LMD.docx'); 

?> 

ответ

0

Я предполагаю, что ваш код генерирует файл слова, который не поврежден при использовании без специальных символов с акцентом. Но в любом случае, можете ли вы попробовать с приведенной ниже версией? Функция loadTemplate устарела в версии 0.13.0, а TemplateProcessor следует использовать вместо этого. + Htmlspecialchars wrapping обычно должна использоваться для текстового содержимого.

$templateProcessor = new PhpWord\TemplateProcessor('Documents/LM.docx'); 
$templateProcessor->setValue('Value1', htmlspecialchars('example with accent évian', ENT_COMPAT, 'UTF-8')); 
$templateProcessor->saveAs('Documents/LMD.docx'); 

Это работает для меня без проблем с PhpWord 0.13.0