JSON字符串传到后台PHP处理问题的解决方法

yipeiwu_com7年前PHP代码库

在项目开发的时候由于涉及到批量记录数组的传入,由于字段多,所以不可能能用普通的方式&a=322&=gsd&v=rwe 这样去传送,所以想到了前端传JSON格式过去content=[{'a':2321,'b':'gsd','c':'dww'},{'a':'4sd','b':'gsd2','c':'dww3'},.....] , 这样的话多条记录后台解析也很方便,但我这么传的时候后台收到的是 [{\'a\':2321,\'b\':\'gsd\',\'c\':\'dww\'}...] 这样的格式,而我需要的标准的JSON格式的字符串,利用PHP的json_decode 解析后直接转换成数组,这样我就好操作,到网上搜索了很多同学也遇到了和我一样的问题,找了半天最好都还是没找到答案,最后还是自己整出来了,stripslashes 用PHP中的这个函数,把获取的JSON字符串转换一下就OK了,

其实这个问题是由 get_magic_quotes_gpc() 函数引起的,如果php.ini 中的配置为 off 应该就没这个问题,所以利用这个函数的时候加上判断

//$json 为接收的JSON字符串
if(get_magic_quotes_gpc()==1){
  $json = stripslashes($json);
}

说句多余的话,俩年没整PHP了,都忘光了,最近项目需要又得翻手册了

相关文章

php进程(线程)通信基础之System V共享内存简单实例分析

php进程(线程)通信基础之System V共享内存简单实例分析

本文实例讲述了php进程(线程)通信基础之System V共享内存。分享给大家供大家参考,具体如下: PHP默认情况没有开启功能,要支持该功能在编译PHP的时候要加入下面几个选项&nbs...

PHP使用curl函数发送Post请求的注意事项

前言 前几天在工作中遇到了一个需求,当用户点击了某个按钮以后,后台发起一个post请求到我这里,我接受传递过来的数据。一开始同事是用公司框架公共封装的http_request()方法进行...

基于empty函数的判断详解

$a = '';echo '1.-----------'.($a == '').'<br>';echo '2.-----------'.($a == null).'<b...

PHP日期处理函数 整型日期格式

当我过去用ASP时解决这个问题相当简单,ASP有相应的函数DateDiff可以给出两个日期间间隔多少月、多少天和多少秒。当我搜寻完PHP手册后我发现PHP并没有类似的函数。 本文包含以下...

PHP常量使用的几个需要注意的地方(谨慎使用PHP中的常量)

为什么要谨慎使用PHP中的常量? Zend Framework文档中写道:常量包含数字字母字符和下划线,数字允许作为常量名。 常量名的所有字母必须大写。类常量必须通过 "const" 定...