我创建了一个简单的修饰符来解码用json编码的字符串。
function smarty_modifier_json_decode($string)
{
return json_decode($string, true);
}
现在我在我的数据库中有一个像这样的字符串:
[{"foo": "bar bar", "cool": "attr"},{"foo": "bar", "cool": "attr"},{"foo": "bar", "cool": "attr"}]
问题是如果我将上面的字符串本地存储在php文件中的字符串变量中,并且在运行json_decode之后我返回数组我应该回来并且工作正常。
但由于某些原因,我不知道和idont udnertand存储在数据库中的字符串可能没有正确保存在正确的字符编码中,因为当我尝试在smarty上执行fucntion时,我总是得到NULL: / p>
{$data.custom6|json_decode|var_dump}
所以我的问题是,如果我有这个字符串,但我不知道我的软件如何将它保存到数据库中我应该怎么做才能将它转换为正确的编码并用json_decode处理它之后?
由于
注1:我不知道后端如何将数据保存到数据库中,并且我不会影响这一步骤。我只能使用Web界面在自定义字段中插入我的JSON字符串并按下SAVE按钮 -
注意2:抱歉在这里复制文件的错误,我放置$ json而不是$ string。但它不起作用。