php - json_encode 和 mysql unicode 问题

标签 php javascript html ajax unicode

我有以下 JavaScript 代码:

http://www.nomorepasting.com/getpaste.php?pasteid=22561

效果很好(makewindows 函数已更改为显示它是一个 php 变量),但是 html 包含 unicode 字符,并且只会分配第一个 unicode 字符之前的字符。如果我制作一个小测试文件并直接回显article_desc,则所有html都会输出,尽管显示的是问号而不是正确的符号。然而 json_encode 似乎缩短了 html,导致错误。

编辑:这里是直​​接从 mysql 数据库转储的我试图显示的 html:

http://www.yousendit.com/download/TTZueEVYQzMrV3hMWEE9PQ

源代码中显示为 utf-8。通过回显article_desc生成的实际页面代码在这里:

http://www.nomorepasting.com/getpaste.php?pasteid=22566

这绝对是同一个记录,所以我不确定为什么它看起来很不同。

编辑:这是通过调用修复的:mysql_query('SET NAMES utf8');

最佳答案

json_encode 期望字符串是 UTF-8 编码的字节流。您必须在内部使用 utf-8 编码的字符串(无论如何,这是当前处理 PHP 中的 unicode 字符的唯一方法),或者使用 a different library用于生成 json。

关于php - json_encode 和 mysql unicode 问题,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/349614/

相关文章:

javascript - DGrid - 使用拖放时的单选模式 -> 结果是多选

javascript - 在一个函数中验证多个表单域

html - 使用 div 中间对齐标签和文本框

php - 通过部门的总额(包括公司)

c# - 我应该避免替代控制语法吗?

javascript - 当循环 div 时,jQuery 仅适用于第一个 div。我还在学习 PHP,我不知道哪里出了问题

PHP MySQL 选择字段并增加值

javascript - 如何从地址获取经度和纬度

javascript - Gulp 编译错误 js.72。未处理的错误

html - 使一列单元格确定行高