我看过一些关于这个主题的帖子。
我有一个包含字母é的字符串。我需要json_encode这个字符串,但该函数将返回null。在其他帖子中,据说这背后的原因是字符串不是utf-8编码的字符串。因此,它需要是一个utf-8编码的字符串才能工作。
问题是,字符串直接来自数据库,它源自的表编码为utf-8。那么字符串我是如何尝试解析为json对象而不是utf-8?我错过了什么吗?
答案 0 :(得分:0)
您是否尝试将其编码为UTF-8,然后使用iconv()之类的内容将其保存到数据库中,或者在将其解析为json之前?
IE:
$utfchar = iconv('Windows-1252', 'UTF-8','é');
编辑:
您还需要将浏览器的字符集设置为utf8,例如:
<meta http-equiv="Content-Type" content="text/html; charset=utf-8" />
<?php
$test = iconv('Windows-1252', 'UTF-8','é');
echo $test;
?>
<script type="text/javascript">
var jstest = '<?php echo $test; ?>';
console.log(jstest);
</script>