【问题标题】:Phpword and accented charactersPhpword 和重音字符
【发布时间】:2017-06-07 17:04:32
【问题描述】:

您好,我遇到了 php word 的问题。当我在文件中使用重音字符时,文件已损坏且无法打开。

<?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');

?>

【问题讨论】:

    标签: diacritics non-ascii-characters phpword


    【解决方案1】:

    我假设您的代码生成的 word 文件在不使用特殊重音字符的情况下不会损坏。但是无论如何,您可以尝试使用以下版本吗? loadTemplate 函数在 0.13.0 版本中已弃用,应使用 TemplateProcessor 代替 + htmlspecialchars 包装通常应用于文本内容。

    $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 没有问题

    【讨论】:

      猜你喜欢
      • 1970-01-01
      • 2021-12-02
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 2015-11-05
      • 2023-03-03
      • 1970-01-01
      相关资源
      最近更新 更多