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

yipeiwu_com6年前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、Nginx、Apache中禁止网页被iframe引用的方法

可以使用php或nginx等添加X-Frame-Options header来控制frame权限X-Frame-Options有三个可选的值: DENY:浏览器拒绝当前页面加载任何Fra...

windows下开发并编译PHP扩展的方法

现在就简单说一在WINDOWS下开发PHP扩展的步骤: 首先需要准备的软件有: cygwin 安装路径e:\app\cygwin visual studio C++ 6.0, 修改环境变...

解决file_get_contents无法请求https连接的方法

错误: Warning: fopen() [function.fopen]: Unable to find the wrapper "https" - did you forget to...

php用户注册信息验证正则表达式

下面这个正则验证用户名的方法原则是这样的用户名必须是由字母带数字带定划线组成了,下面一起来看看例子吧. 1.检查用户名是否符合规定“两位以上的字母,数字,或者下划线”,代码如下: /...

Apache下禁止php文件被直接访问的解决方案

Apache下禁止php文件被直接访问的解决方案

  一开始,我想在重写规则里直接禁止php后缀的URL被访问。但后来发现重写规则是递归调用的,如果在重写规则里直接禁止php,那么重写到php文件的规则也会失效。RewriteEngin...