【PHP】 将一个json 以字符串的形式储存到mysql数据中 转译字符"\"

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')");
		}

转载于:https://my.oschina.net/Peron/blog/709247

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值