当我将字符串存储到 MySQL 数据库表时,我在使用 json_encode/decode 函数时遇到了一些问题。 问题出在瑞典字符上,比如 ÅäÖ。 如果有类似的东西
$my_arr = array('Räksmörgås');
$json = json_encode($my_arr):
print_r(json_decode($json));
它工作得很好,问题是,正如我所说,当我将 jsonstring 存储到数据库然后收集它们时。该表(整个数据库)的编码为“utf8_general_ci”。我也尝试过“uft8_unicode_ci”,结果相同,输出将为“Ru00e4ksmu00f6rgu00e5s
”。我存储该值的列是“TEXT”。
我做错了什么?
编辑,我忘了提及这是一个 WordPress 插件,我正在使用 $wpdb->prepare() 和 $wpdb->query()。
最佳答案
在代码中的某个地方,您正在删除斜杠。
// text: Räksmörgås
// json_encode(): R\u00e4ksm\u00f6rg\u00e5s
// your output: Ru00e4ksmu00f6rgu00e5s
关于php - json_encode/decode char 麻烦,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/15474695/