欢迎您访问程序员文章站本站旨在为大家提供分享程序员计算机编程知识!
您现在的位置是: 首页  >  后端开发

php 解析HTML post过来的json字符串,该怎么解决

程序员文章站 2022-05-06 15:01:01
...
php 解析HTML post过来的json字符串
本帖最后由 asia_deng 于 2014-07-07 15:48:48 编辑 我在js里把一个json对象转为json字符串,然后放到一个隐含的input里提交到php
这是HTML的部分




php里获取到的字符串是:

[{\\"table\\":\\"a\\",\\"field\\":\\"value\\",\\"max\\":60,\\"min\\":null}]

对字符串处理

$json_string=$_POST['json'];
$json=htmlspecialchars_decode($json_string);
print_r(json_decode($json));//结果是空的


换一下

$json=stripslashes(htmlspecialchars_decode($json_string));
print_r(json_decode($json));//结果还是空的


再改一下

$json=stripslashes(stripslashes(htmlspecialchars_decode($json_string)));
print_r(json_decode($json));//好吧,结果还是空的

php 解析HTML post过来的json字符串,该怎么解决


------解决方案--------------------
本帖最后由 xuzuning 于 2014-07-07 15:57:51 编辑 也真难为你了,做那么复杂的编码处理
$s = '[{\\"table\\":\\"a\\",\\"field\\":\\"value\\",\\"max\\":60,\\"min\\":null}]';

$s = html_entity_decode($s);
$s = stripslashes($s);

print_r(json_decode($s, 1));
Array
(
[0] => Array
(
[table] => a
[field] => value
[max] => 60
[min] =>
)

)


------解决方案--------------------
$str='[{\\"table\\":\\"a\\",\\"field\\":\\"value\\",\\"max\\":60,\\"min\\":null}]';
$new=htmlspecialchars_decode($str);

$new=str_replace('\\','',$new);

$new1=json_decode($new,true);
echo "
";
print_r($new1);
echo "
";

Array
(
[0] => Array
(
[table] => a
[field] => value
[max] => 60
[min] =>
)

)
------解决方案--------------------
echo base64_encode($_POST['json']);
贴出结果
php 解析HTML post过来的json字符串,该怎么解决

声明:本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系admin@php.cn核实处理。

相关文章

相关视频


网友评论

文明上网理性发言,请遵守 新闻评论服务协议

我要评论
  • php 解析HTML post过来的json字符串,该怎么解决
  • 专题推荐

    作者信息
    php 解析HTML post过来的json字符串,该怎么解决

    认证0级讲师

    推荐视频教程
  • php 解析HTML post过来的json字符串,该怎么解决javascript初级视频教程
  • php 解析HTML post过来的json字符串,该怎么解决jquery 基础视频教程
  • 视频教程分类