我正在对付款网关执行查询,这是我作为回复收到的JSON的一部分:
"//{\"COLUMNS\":[\"TR_ID\",\"INV_ID_EXT\",\"CUST_ID_EXT\",\"MERCH_ID\", ... ,null,\"510510\",1,24]]}"
如何从字符串中删除" \"在真正的JSON中进行转换?
到目前为止我做了什么:
echo $JSON2 = str_replace("//","",$theString);
我明白了:
"{\"COLUMNS\":[\"TR_ID\", ...
当我尝试str_replace("\\","",$JSON2);
时,我仍然拥有"{\"COLUMNS\":[\"TR_ID\", ...
出于某种原因,我可以删除//
但不能删除\
。
如何在没有字符循环的情况下从此字符串中删除\
?
答案 0 :(得分:3)
您是否尝试过使用str_replace和stripslashes?见https://eval.in/836989
<?php
$string="//{\"COLUMNS\":[\"TR_ID\",\"INV_ID_EXT\",\"CUST_ID_EXT\",\"MERCH_ID\", ... ,null,\"510510\",1,24]]}";
echo stripslashes(str_replace('//','',$string));
?>
N.B :这会从您的字符串中删除//
和\
个字符,但它仍然不是有效的json。有效的json就是这样的,所以在这种情况下你还要删除字符串中的最后一个]
和...
{
"COLUMNS": ["TR_ID", "INV_ID_EXT", "CUST_ID_EXT", "MERCH_ID", null, "510510", 1, 24]
}
对于Magic Quotes问题:PHP stripslashes problem
答案 1 :(得分:0)