我的问题是这样的:函数utf8_encode不会产生正确的结果
我存储阵列,其中有像“E”,“F”等。在某些时候,钥匙,我得的值键。这很好。但是,如果我想存储“í”,“é”等作为键,它不会产生正确的结果(结果见 )。我的页面必须使用UTF-8格式。查找问题,我发现utf8_encode应该可以帮助我解决问题。它并没有:虽然它产生了更易读的字符,但它与我想要的完全不同。如果重要,phpinfo给出:
Directive Local Value Master Value
iconv.input_encoding ISO-8859-1 ISO-8859-1
iconv.internal_encoding ISO-8859-1 ISO-8859-1
iconv.output_encoding ISO-8859-1 ISO-8859-1
什么可以帮助解决这个问题?
编辑:我认为,数组键使一些数据丢失。这是真的吗?如果是,如何预防?
编辑2:我到目前为止试过的解决方案:获取数组键值 - 失败;用相同的键创建一个数组,但是utf-8字符的值:失败; utf8_encode失败; [试用了两个] iconv_set_encoding:失败; ini_set失败; mb_internal_encoding失败。所有返回与Ã或 。
您的输出可能是'ISO-8859-1'根据这些设定编码。这与'utf8_encode'完全无关。与您的浏览器一起检查适用的编码。 – hakre 2012-02-11 16:19:09
是的,输出似乎是ISO-8859-1。我如何解决这个问题,而不编辑php.ini? – axiomer 2012-02-11 16:35:44
发送了一个表示该信号的标题。禁用iconv输出编码,如果你不知道那是什么,你将不需要它。检查PHP手册如何在运行时改变它。祝你好运! – hakre 2012-02-11 17:18:30