我从数据库中获取大量数据并将其放入PHP数组中。我正在寻找使用window.history.back();
对该数组进行json_encode。
我的问题是,$output = json_encode($out)
无法读取数组中的某些内容并且整个内容都失败了。如果我使用json_encode
来查看,我可以清楚地看到它失败的地方,因为拧起来的角色总是在黑色钻石print_r($out)
内显示为问号。
首先 - 这些角色是什么?
第二 - 是否有一个函数我可以在将它们添加到数组之前传递元素,将它们剥离出来,或用空格替换'它们'?
答案 0 :(得分:0)
I found the answer to this. Since the data coming FROM the database was stored with the "black diamond" character, I needed to get this out POST grabbing it from the database.
-123456789
[235 50 164 248 255 255 255 255]
-123456789
By passing the result through $x[4] = utf8_encode(odbc_result($query, 'B'));
, the string is encoded into UTF-8 and the illegal character is removed.
答案 1 :(得分:-1)
Say echo json_encode($ out); 这将解决您的问题
答案 2 :(得分:-1)
黑钻是浏览器问题。数据库使用普通问号。 看来你从databalse得到了错误的数据。但是如果你的设置不正确,那就非常棘手了。你需要检查一切
查看页面从浏览器菜单中选择不同的字符集也很有用。
但是首先你必须擦除你尝试的所有随机动作的痕迹,所有这些编码,解码和东西。只是简单而直接的数据库输出。否则你永远不会遇到问题