特殊字符/Unicode/特殊符号到单词 php
Special character/ Unicode / special symbol to word from php
我正在使用 COM 从 PHP 生成 word 文档。我在转换字符以发送到 word 书签模板时遇到一个大问题,生成无用的汉字和一些数字。
这是我在 php - Brüel & Kjær
中的字符串值
这是生成后的word文档文本 - Brüel & Kjær1墄
这是我在php中的转换方式:
$text="Brüel & Kjær";
$text = iconv(mb_detect_encoding($text, mb_detect_order(), true), "UTF-8",$text);
$text = htmlspecialchars_decode($text);
$text=html_entity_decode($text, ENT_QUOTES, 'utf-8');
这是将 COM 书签变量添加到值的方法:
$PHPWord = new COM("word.application", NULL, CP_UTF8);
$PHPWord->Documents->Open(realpath($template));
$bookmark = $PHPWord->ActiveDocument->Bookmarks("bookmark1");
$bookmark = $bookmark->Range;
$bookmark->Text=$text;
$PHPWord->Documents[1]->SaveAs('temp/' . $template);
我相信我的代码中存在字符转换问题。但我在互联网上搜索,找不到解决我问题的方法。你能帮忙解决这个问题吗?
是他们将 html 发送到此书签或任何转换的方式吗??
我的天啊,快完成了:
$text="Brüel & Kjær";
$PHPWord = new COM("word.application", NULL, CP_UTF8);
替换为:
$PHPWord = new COM("word.application");
$PHPWord->Documents->Open(realpath($template));
$bookmark = $PHPWord->ActiveDocument->Bookmarks("bookmark1");
$bookmark = $bookmark->Range;
$bookmark->Text=html_entity_decode($text);
$PHPWord->Documents[1]->SaveAs('temp/' . $template);
我正在使用 COM 从 PHP 生成 word 文档。我在转换字符以发送到 word 书签模板时遇到一个大问题,生成无用的汉字和一些数字。
这是我在 php - Brüel & Kjær
这是生成后的word文档文本 - Brüel & Kjær1墄
这是我在php中的转换方式:
$text="Brüel & Kjær";
$text = iconv(mb_detect_encoding($text, mb_detect_order(), true), "UTF-8",$text);
$text = htmlspecialchars_decode($text);
$text=html_entity_decode($text, ENT_QUOTES, 'utf-8');
这是将 COM 书签变量添加到值的方法:
$PHPWord = new COM("word.application", NULL, CP_UTF8);
$PHPWord->Documents->Open(realpath($template));
$bookmark = $PHPWord->ActiveDocument->Bookmarks("bookmark1");
$bookmark = $bookmark->Range;
$bookmark->Text=$text;
$PHPWord->Documents[1]->SaveAs('temp/' . $template);
我相信我的代码中存在字符转换问题。但我在互联网上搜索,找不到解决我问题的方法。你能帮忙解决这个问题吗?
是他们将 html 发送到此书签或任何转换的方式吗??
我的天啊,快完成了:
$text="Brüel & Kjær";
$PHPWord = new COM("word.application", NULL, CP_UTF8);
替换为:
$PHPWord = new COM("word.application");
$PHPWord->Documents->Open(realpath($template));
$bookmark = $PHPWord->ActiveDocument->Bookmarks("bookmark1");
$bookmark = $bookmark->Range;
$bookmark->Text=html_entity_decode($text);
$PHPWord->Documents[1]->SaveAs('temp/' . $template);