php json存mysql斜杠_php下如何将json格式的数据直接存入mysql数据库?

使用php

json_encode

过,直接存入mysql报错,google一下 没有找到合适的解决方法,请问如何处理才能将json格式的数据存入mysql

代码:

$imgs_str = json_encode($imgs_array);

$imgs_str = addslashes($imgs_str);

$update_query = "update

article

set imageList = $imgs_str where id = $targetid";

json编码后的数据是这样的:

{"key":"value"}

那sql就是这样的:

insert into `table` (`field`) values ("{"key":"value"}")

所以就出错了

完整代码:

$data = json_encode($array);

// 过滤

$data = addslashes($data);

// 入库

$db->insert($table_name,array(

'field' => $data,

));

输入有点不对题,PHP 里的JSON也是用json_encode 来的(自己组合出来的当我没说哈),用 serialize 函数 吧。直接存数组好了。

PHP 有一个 serialize 序列化函数,这问题你应该查文档。

其实没有必要在MYSQL中存储JSON

JSON这样的格式:{“key”:”vlaue”};

在PHP 和 MYSQL 交互过程中很多余。

如:@cevin 所说,

$data = json_encode($array);

// 过滤

$data = addslashes($data);

// 入库

$db->insert($table_name,array(

'field' => $data,

));

实际上已经做了一次无用功那就是 json_encode($data);

何不直接 addslashes($data) 后直接入库?

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

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值