如何使用php删除json响应中的反斜杠?

如何使用php删除json响应中的反斜杠?,php,mysql,json,Php,Mysql,Json,我尝试将一行mysql查询添加到带有php的JSON中。我使用以下代码: public function lugaresCercanos($lng, $lat, $distance){ $result=mysql_query("SELECT nombre, distancia FROM Lugar ORDER BY distancia ASC"); $info=array(); while($row = mysql_fetch_array($result,MYSQL_ASSOC)){

我尝试将一行mysql查询添加到带有php的JSON中。我使用以下代码:

public function lugaresCercanos($lng, $lat, $distance){
$result=mysql_query("SELECT nombre, distancia FROM Lugar ORDER BY distancia ASC");
$info=array();
    while($row = mysql_fetch_array($result,MYSQL_ASSOC)){
        array_push($info,$row);
    }
    return json_encode($info);
这将返回一个JSONObject,但我不确定

    class resultado_final {
public $logstatus = "";
public $lugares_cercanos = "";}

$result_final = new resultado_final();
if($db->login($usuario,$passw)){
$result_final->logstatus = "0";}else{
$result_final->logstatus = "1";}
$result_final->lugares_cercanos = $lista;
echo json_encode($result_final);
此代码将打印以下内容:

{"logstatus":"1","lugares_cercanos":"[{\"nombre\":\"Rio Amazonas\",\"distancia\":\"5119.000\"},{\"nombre\":\"Swissotel \",\"distancia\":\"5823.000\"},{\"nombre\":\"Laguna de Yaguarcocha\",\"distancia\":\"71797.000\"}]"}
{"logstatus":"1","lugares_cercanos":[{"nombre":"Rio Amazonas","distancia":"5119.000"}{"nombre":"Swissotel Quito","distancia":"5823.000"}{"nombre":"Laguna de Yaguarcocha","distancia":"71797.000"}]}
为什么查询的行用反斜杠分隔? 如何去除反斜杠?
非常感谢

的\是对响应中的引号(“)进行转义

使用
stripslashes()
将其删除


当用引号括起来的字符串包含引号时,必须对其进行转义。php中的转义字符是
\
停止对数据进行双重编码。将所有内容放在一个大结构中,然后仅对其进行编码。

试试看

json_encode($arr, JSON_UNESCAPED_SLASHES);

(如果unescape不起作用) 谢谢,我解决了

$info=array();
    while($row = mysql_fetch_array($result,MYSQL_ASSOC)){
        array_push($info,$row);
    }
    $info;
$result_final->lugares_cercanos = $info;
打印此文件:

{"logstatus":"1","lugares_cercanos":"[{\"nombre\":\"Rio Amazonas\",\"distancia\":\"5119.000\"},{\"nombre\":\"Swissotel \",\"distancia\":\"5823.000\"},{\"nombre\":\"Laguna de Yaguarcocha\",\"distancia\":\"71797.000\"}]"}
{"logstatus":"1","lugares_cercanos":[{"nombre":"Rio Amazonas","distancia":"5119.000"}{"nombre":"Swissotel Quito","distancia":"5823.000"}{"nombre":"Laguna de Yaguarcocha","distancia":"71797.000"}]}

如果有人想删除反斜杠并漂亮地打印JSON数据,可以使用以下方法:

json_encode($my_array, JSON_UNESCAPED_UNICODE | JSON_PRETTY_PRINT);

\是对响应中的引号(“)进行转义。这对我来说很有效:echo str_replace(“\/”、“/”、json_encode($mydatas));