PHP处理提交的JSON数据

今天使用POST方式(GET方式也要注意)向PHP提交了一个JSON数据,比如:

{"a":1,"b":2}

在PHP中取出这个数据:

$s=$_POST['data'] ;//or $_GET['data']

然后这个串取出后是被转义的:

{\"a\":1,\"b\":2}

如果直接调用:

$obj = json_decode($s);

print_r($obj);

echo $obj->a;

是错误的,会报告错误.

如果$s直接定义:

$s='{"a":1,"b":2}';

则没有问题.

所以在PHP中处理JSON时需要进行一下转义处理:

$s=stripslashes($_POST['data']) ;

这样再进行json解码就可以了.