本帖最后由 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));//好吧,结果还是空的
------解决方案--------------------本帖最后由 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']);
贴出结果
声明:本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系admin@php.cn核实处理。
相关文章
相关视频
网友评论
文明上网理性发言,请遵守 新闻评论服务协议
我要评论