json传文本编辑器内内容时,本来是的在引号前+”/“,避免读取时打破json数据原有格式,在本地没有任何问题。
结果在本地服务器跑的好好的,放到网上服务器又出现了问题,就是服务器自己也会给json数据中" \" "、”\r“在加一个”\“,结果出现了诸如"\\\”"、"\\\r"..搞得一头雾水
查了一下才知道,原来电商的php服务器一般都为了防止注入或者溢出,通过PHP 指令 magic_quotes_gpc自动在双引号、单引号、反斜杠、NULL前面添加反斜杠“\”。
解决方案:
1.在接收数据端做如下处理:
$str=$_POST["str"];//读取str的内容赋值给$str变量
if(get_magic_quotes_gpc())//如果get_magic_quotes_gpc()是打开的
{
$str=stripslashes($str);//将字符串进行处理
}
2.修改php.ini的对应参数将magic_quotes_gpc关掉
由于动不了电商的php服务器,所以还是按照步骤一比较好