替换php响应的字符串

替换php响应的字符串,php,json,response,Php,Json,Response,我有这样的php文件 <?php define('HOST','localhost'); define('USER','root'); define('PASS','123'); define('DB','123'); $mysqli = new mysqli(HOST,USER,PASS,DB); /* check connection */ if (mysqli_conn

我有这样的php文件

<?php

        define('HOST','localhost');
        define('USER','root');
        define('PASS','123');
        define('DB','123');

        $mysqli = new mysqli(HOST,USER,PASS,DB);
        /* check connection */
        if (mysqli_connect_errno()) {
        printf("Connect failed: %s\n", mysqli_connect_error());
        exit();
        }       

        $mysqli->query("SET NAMES 'utf8'");
        //$sql="SELECT via,events,doc FROM profile";
                $sql="SELECT via, doc FROM profile";
        $result=$mysqli->query($sql);
        while($e=mysqli_fetch_assoc($result)){
        $output["response"][]=$e;

        //json_encode($output) = str_replace("\/", '/', json_encode($output));/* not working*/
        }   

        echo(json_encode($output)); 
        $mysqli->close();   

        ?>
我是说如何用这个来代替上面的回答

{"response":[{"via":"19156001882722","doc":"http://oursite/propic_uploads/58.png"},{"via":"sunil holla","doc":"propic_uploads/Fantasia Painting(29).jpg"}]}
任何人都可以帮我得到这个…

你需要从你的回复中获得带斜杠的功能

示例:

$string = '{"response":[{"via":"19156001882722","doc":"http:\/\/oursite\/propic_uploads\/58.png"},{"via":"sunil holla","doc":"propic_uploads\/Fantasia Painting(29).jpg"}]}';    
echo stripslashes($string);
{"response":[{"via":"19156001882722","doc":"http://oursite/propic_uploads/58.png"},{"via":"sunil holla","doc":"propic_uploads/Fantasia Painting(29).jpg"}]}
结果:

$string = '{"response":[{"via":"19156001882722","doc":"http:\/\/oursite\/propic_uploads\/58.png"},{"via":"sunil holla","doc":"propic_uploads\/Fantasia Painting(29).jpg"}]}';    
echo stripslashes($string);
{"response":[{"via":"19156001882722","doc":"http://oursite/propic_uploads/58.png"},{"via":"sunil holla","doc":"propic_uploads/Fantasia Painting(29).jpg"}]}
这里已经解决了:

您只需要使用JSON_UNESCAPED_SLASHES标志:


json_encode($str,json_UNESCAPED_SLASHES)

它是如何存储在您的数据库中的?为什么要使用它?“\”字符用于转义“/”字符。它告诉解析器下一个字符不是语法,应该被解释为普通字符。哦,非常酷的解决方案,比我做得好。。投票给我们简单和好。谢谢