[英]Passing utf-8 strings between php and javascript
我在将utf-8字符串传递给javascript(ajax)时遇到问题。 目前我在PHP端使用rawurlencode
,在javascript端使用unescape
。
问题在于拉丁语和rawurlencode
不完全支持它。
有没有其他选择或更好的选择?
解决方案是在json_encode
函数中。 当我添加JSON_HEX_APOS|JSON_HEX_QUOT
时,问题就停止了。
谢谢!
在PHP中使用json_encode并以JSON接收响应(jQuery很有用)默认情况下,ajax在utf-8中发送,所以你只需要返回utf-8
php的utf8_encode(data)获取ISO-8859-1字符串作为数据参数。
需要更多建议? 告诉我你从哪里得到文字;)
根据经验,Javascript的escape() (因此unescape() ) 不是 Unicode(UTF-8)友好的。 请改用encodeURIComponent()和decodeURIComponent() 。
无论如何,正如文档所说:
escape()函数不应用于编码URI。
如果php正在进行编码和js解码whay不仅不是在php中编码而且在js中编码也是如此? 我的猜测并不是一个真正的答案。
声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.