如何使json_encode与多字节字符一起使用?

时间:2009-10-07 14:10:13

标签: php json multibyte

echo '<a title=' .json_encode("按时间先后进行排序") . '>test</a>';

上面会产生类似“\ u6309 \ u65f6 \ u95f4 \ u5148 \ u540e \ u8fdb \ u884c \ u6392 \ u5e8f”的内容,这真是一团糟!

3 个答案:

答案 0 :(得分:2)

不,那是JSON。 JSON编码器可以按原样自由复制字符(双引号,反斜杠或控制字符除外)或使用\uxxxx表示法对它们进行编码。所以,即使上面的内容并不漂亮,它也是有效的JSON,并确保字符串被正确解码。

答案 1 :(得分:2)

title属性值不被视为JavaScript。仅使用json_encode将PHP类型转换为JavaScript / JSON表达式。

请改为尝试:

echo '<a title="按时间先后进行排序">test</a>';

但是您需要使用与标题文本相同的编码发送文档。

答案 2 :(得分:0)