php输出字符unicode码,使用PHP输出阿拉伯文(Unicode)字符的原因json_encode

我使用json_encode来编码阿拉伯文(Unicode)文本,即将每个字母转换为像\ u0627 \ u0644 \ u0633 \ u064a \ u0627 \ u0631 \ u0627 \ u062a。使用PHP输出阿拉伯文(Unicode)字符的原因json_encode

这对我来说很烦人,并且显着增加了输出的大小。

我需要一个简单的解决方案来正确输出文本,而不会将其转换为上面那些奇怪的长字符。

我输入数组是:

$array = array(1 => 'اللغة', 2 => 'العربية', 3 => 'تحوّل إلى', 4 => 'جيسون');

我从json_encode得到的输出:

{"1":"\u0627\u0644\u0644\u063a\u0629","2":"\u0627\u0644\u0639\u0631\u0628\u064a\u0629","3":"\u062a\u062d\u0648\u0651\u0644 \u0625\u0644\u0649","4":"\u062c\u064a\u0633\u0648\u0646"}

虽然我希望得到的结果是:

{"1":"اللغة","2":"العربية","3":"تحوّل إلى","4":"جيسون"}

+1

我明白你为什么做了这一点,并欣赏你的努力。但不幸的是,这不是真正的问题(而是某种基于知识的项目),因此对于stackoverflow的Q&A格式没有用处。如果您可以将其重新格式化为一个问题,那么您可以在一段时间后自行回答它(或者可能有人想出了另一个更好的主意) –

2012-01-08 10:41:51

+0

您正在寻找'JSON_UNESCAPED_UNICODE'选项。自PHP 5.4起可用或使用upgradephp的第17版(经过测试转换)。 –

2012-01-08 13:45:48

+0

这似乎是一个真正的问题,因为它有一个真正的答案(使用'JSON_UNESCAPED_UNICODE'),并且因为预期的输出实际上是有效的JSON。 (对于字符转义,PHP显然过于热衷)。 –

2014-05-12 20:23:53

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值