我必须将 JSON 格式的字符串保存到我的 latin1 mysql 数据库中。为了能够使用 uft8_encode 函数,我必须将整个数组转换为 utf8,然后将生成的字符串转换回 latin1。
所以我尝试了以下代码:
// $context is equal to array('produção' => 'homologação'), for testing purposes
$context = Helper::getHelper('Util')->encodeUtf8($context); // Encodes key and value with utf8_encode
$context = json_encode($context); // {"produ\u00e7\u00e3o":"homologa\u00e7\u00e3o"}
$context = utf8_decode($context); // Still {"produ\u00e7\u00e3o":"homologa\u00e7\u00e3o"}
但正如你所看到的,它并没有像我预期的那样工作。我也尝试使用 Zend_Json 库,但它也不适用于这些字符。
为了简化:我需要将一个 latin1 数组编码为 JSON,然后将该 JSON 插入到我的 latin1 数据库中。
有人知道我该怎么做吗?实现相同结果的更好方法也将不胜感激。