1.大家知道json的格式是这样的:
{"app":"1.0","system":"iPhone OS 9.3.2","model":"iPhone 5s (A1457/A1518/A1528/A1530)"}
但 如果你想要查询出来的结果是这样json
{
device_info: "{"app":"1.0","system":"iPhone OS 9.3.2","model":"iPhone 5s (A1457/A1518/A1528/A1530)"}",
phone: "132****2230",
com_time: "2016-07-04"
}
2.那么你的原始的json在插入数据库的时候就得加工成这样:
{\"app\":\"1.0\",\"system\":\"iPhone OS 9.3.2\",\"model\":\"iPhone 5s (A1457/A1518/A1528/A1530)\"}
3.加工代码如下:
public function Updata_Device_Info($user_id,$device){
$json=json_encode($device);//编码成json字符串
$json=(string)str_replace('"', '\\\\"', $json);//将插入2个\到字符串。组成sql语句,因为sql中将\视为转译字符 所以是两个
return $this->db->query("UPDATE `user` SET `device_info`='".$json."' WHERE (`user_id`='$user_id')");
}
来源:oschina
链接:https://my.oschina.net/u/2267270/blog/709247