如何在访问json数据时删除转到文件路径字段的正斜杠

时间:2018-04-08 14:33:18

标签: php android json special-characters

Screenshot of path stored in the database

Json data which I retrieved

我用来编码JSON的PHP代码:

<?php
$host='localhost'; $username=''; $pwd=''; $db="";

$con=mysqli_connect($host,$username,$pwd,$db) or die('Unable to connect');

if(mysqli_connect_error($con))
{
    echo "Failed to Connect to Database ".mysqli_connect_error(); 
}

$sql="SELECT * FROM qtb";

$result=mysqli_query($con,$sql); 

if($result) 
{
    while($row=mysqli_fetch_array($result))     
    {
        $data[]=$row;   
    }       

    print(json_encode(array('QOB' => $data))); 
}

mysqli_close($con);
?>

1 个答案:

答案 0 :(得分:0)

这假设您在问题中实际上意味着反斜杠 - 请参阅注释。

尝试使用json_encode中的JSON_UNESCAPED_SLASHES选项:

json_encode(array('QOB' => $data), JSON_UNESCAPED_SLASHES)

反斜杠('\')正在转义正斜杠('/') - 所以如果你真的想要删除正斜杠(如标题所示)那么你的路径就不正确了。如果你的意思是“用反斜杠代替正斜杠”,那就不同了。

将正斜杠更改为反斜杠

print(str_replace('/', '\\', json_encode(array('QOB' => $data), JSON_UNESCAPED_SLASHES)));

沙箱: http://sandbox.onlinephpfunctions.com/code/babf45f149226518a796714323dbff6040664a9b