问题描述
json_encode
只想utf-8
。根据您的字符集,可以 在 调用变量 之前
使用iconv
或。可能与。utf8_encode
__json_encode``array_walk_recursive
根据要求,这是一种 更改数组的方法,并假设(1)它不包含对象,并且(2)数组键位于ascii /下界,因此可以保留原样:
$current_charset = 'ISO-8859-15';//or what it is Now
array_walk_recursive($array,function(&$value) use ($current_charset){
$value = iconv('UTF-8//TRANSLIT',$current_charset,$value);
});
解决方法
我有一个带有法国口音的数组项([WIPDescription] => Recette SoupeàlOignon Sans Boeuf
US)。数据已从数据库(mysql)中正确提取。
但是,当我尝试使用内置于json_encode的php将其编码为json时,会生成一个空json值(OS X服务器:php 5.3.4,启用了json
1.2.1)。
在Linux服务器中,描述会在第一个重音符后被截断。
我尝试了所有json_encode选项,但均未成功。有什么建议?
谢谢。