我正在进行标准的jQuery $.ajax()
调用,进行POST。该调用将字符串传递给PHP控制器。
问题如下:当字符串中使用 en dash ( - )字符时,到达PHP时,它被替换为(?)字符。正常的连字符( - )不会导致问题。
网站的编码是UTF-8。我不知道如何解决这个问题。我可能会做一些角色替换,但是我需要为每一个角色替换#34;有问题的"标点符号?
除了问题之外,如果编码正确,那么这不应该工作吗?
混乱。
更新
我在传递的字符串上使用了mb_detect_encoding()
。结果是" ASCII" ...我正在使用遗留代码。我该如何解决这类问题?
答案 0 :(得分:0)
在PHP方面,$_REQUEST
全局用于检索Ajax数据。在我将其更改为$_POST
后,保留了短划线。
我真的不明白为什么$_REQUEST
失败了。
无论如何,这适用于这种情况。我真的不喜欢编写此代码并创建此项目的开发人员:)