Warning: file_get_contents(/data/phpspider/zhask/data//catemap/9/javascript/475.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
在php和javascript之间传递utf-8字符串_Php_Javascript_Utf 8 - Fatal编程技术网

在php和javascript之间传递utf-8字符串

在php和javascript之间传递utf-8字符串,php,javascript,utf-8,Php,Javascript,Utf 8,我在将utf-8字符串传递到javascript(ajax)时遇到问题。目前我在PHP端使用rawurlencode,在javascript端使用unescape 问题出在拉丁语中,rawurlencode不完全支持它 有没有其他选择或更好的选择?如果php正在进行编码和js解码,那么什么不仅仅是不在php中编码,也在js中编码?与其说是一个答案,不如说是一个解决办法。在PHP中使用json\u编码,并以json的形式接收响应(jQuery很有用) 默认情况下,ajax是以utf-8格式发送的,

我在将utf-8字符串传递到javascript(ajax)时遇到问题。目前我在PHP端使用
rawurlencode
,在javascript端使用
unescape

问题出在拉丁语中,
rawurlencode
不完全支持它


有没有其他选择或更好的选择?

如果php正在进行编码和js解码,那么什么不仅仅是不在php中编码,也在js中编码?与其说是一个答案,不如说是一个解决办法。

在PHP中使用json\u编码,并以json的形式接收响应(jQuery很有用) 默认情况下,ajax是以utf-8格式发送的,因此您只需返回utf-8即可

php的utf8_encode(数据)获取一个ISO-8859-1字符串作为数据参数


需要更多的建议吗?告诉我你从哪里得到文本;)

根据经验,Javascript(ant)对Unicode(UTF-8)不友好。使用和代替

无论如何,正如文件所说:

不应使用escape()函数 用于对URI进行编码


解决方案在
json\u encode
函数中。当我添加了
JSON_HEX|JSON_HEX_QUOT
时,问题就停止了


谢谢

我发现了mb_convert_编码函数,但我从未使用过它。我只是对所有数据使用utf8,即使mysql有不同的排序规则,它也可以正常工作。