Warning: file_get_contents(/data/phpspider/zhask/data//catemap/1/php/270.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
PHP:如何将特殊组合字符从UTF-8转换为拉丁语3_Php_Character Encoding_Utf8 Decode - Fatal编程技术网

PHP:如何将特殊组合字符从UTF-8转换为拉丁语3

PHP:如何将特殊组合字符从UTF-8转换为拉丁语3,php,character-encoding,utf8-decode,Php,Character Encoding,Utf8 Decode,我正在尝试将数据从我的数据库(UTF-8)导出到CSV,CSV将在MS Excel(拉丁语3)上打开。因为我用的是 $data[$keyLine][$keyField] = utf8_decode(html_entity_decode($curField, ENT_QUOTES, "UTF-8")); 问题是我的数据是法语的,包括cœur等词。导出的所有数据看起来都很好,除了合成字符œ,在那里我得到了一个问号(cœur转换为c?ur),我如何解决这个问题 提前谢谢。用这个 $data[$key

我正在尝试将数据从我的数据库(UTF-8)导出到CSV,CSV将在MS Excel(拉丁语3)上打开。因为我用的是

$data[$keyLine][$keyField] = utf8_decode(html_entity_decode($curField, ENT_QUOTES, "UTF-8"));
问题是我的数据是法语的,包括cœur等词。导出的所有数据看起来都很好,除了合成字符œ,在那里我得到了一个问号(cœur转换为c?ur),我如何解决这个问题

提前谢谢。

用这个

$data[$keyLine][$keyField]=htmlspecialchars_解码(htmlentities(修剪(条纹斜杠($curField)),ENT_忽略,“UTF-8”,true))


多亏@RiggsFolly的提示,我成功地使用了
iconv

$data[$keyLine][$keyField] = iconv("UTF-8", "Windows-1252", html_entity_decode($curField, ENT_QUOTES, "UTF-8"));
Windows-1252是唯一有效的字符集,你。ISO-8859-15或16都不适用于我。

只需检查该代码集即可。那个角色似乎不存在于那个场景中。然而,在
ISO-8859-15
ISO-8859-16
Windows-1252