json_encode函数:特殊字符

使用json_encode对数组进行编码时,包含特殊字符的数组元素将转换为空字符串:

$arr = array ( "funds" => "ComStage STOXX®Europe 600 Techn NR ETF", "time"=>....);

$json = json_encode($arr);

JSON编码后,元素[funds]为空。它只能使用特殊字符(如版权,商标等)进行,例如“ ComStageSTOXX®Europe600 Techn NR

ETF”中的那些。

有什么建议么?

谢谢

更新:这是在填充数组之前解决问题的原因(所有名称均取自数据库):

$mysqli->query("SET NAMES 'utf8'");

回答:

您的输入必须编码为UTF-8或ISO-8859-1。

http://www.php.net/manual/zh/function.json-

encode.php

因为如果您尝试转换非utf8字符数组,则将获得0作为返回值。


从5.5.0开始,失败时的返回值从空字符串更改为FALSE。

以上是 json_encode函数:特殊字符 的全部内容, 来源链接: utcz.com/qa/421827.html

回到顶部