Warning: file_get_contents(/data/phpspider/zhask/data//catemap/1/php/247.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
如何使用cakePHP从json结果中删除斜杠_Php_Cakephp_Json - Fatal编程技术网

如何使用cakePHP从json结果中删除斜杠

如何使用cakePHP从json结果中删除斜杠,php,cakephp,json,Php,Cakephp,Json,我已经构建了一个REST Web服务,我想从json结果中删除斜杠。我在数据库中存储了一些数据,其中一个字段包含一个websitelinks。我可以通过我的普通视图(html)和json视图访问它们。normal返回delinks normal,但json ads将其斜杠如下: http:\/\/mywebsite\/company\/upload\/siteman\/thumbnails\/carr\/ 我怎样才能删除这个?以下是我的cakephp代码: // D

我已经构建了一个REST Web服务,我想从json结果中删除斜杠。我在数据库中存储了一些数据,其中一个字段包含一个websitelinks。我可以通过我的普通视图(html)和json视图访问它们。normal返回delinks normal,但json ads将其斜杠如下:

       http:\/\/mywebsite\/company\/upload\/siteman\/thumbnails\/carr\/
我怎样才能删除这个?以下是我的cakephp代码:

       // De html view
       <h2>View all posts</h2>

    <table>
     <tr>
     <th>Title</th>
     <th>Body</th>
     </tr>

     <?php foreach($images as $image):?> 
      <tr>
        <td><?php echo $image['Image']['id'];?></td> 
        <td><?php echo $image['Image']['plaatjes'];?></td>
      </tr>
     <?php endforeach; ?>
    </table>

    // The json view 
    <?php
    echo json_encode($images);
    ?>
//反html视图
查看所有帖子
标题
身体
//json视图

使用
str\u replace
,如下所示:

<?php
echo str_replace('\/','/',json_encode($images));
?>
<?php
echo json_encode($images,JSON_UNESCAPED_SLASHES);
?>

使用
str\u replace
,如下所示:

<?php
echo str_replace('\/','/',json_encode($images));
?>
<?php
echo json_encode($images,JSON_UNESCAPED_SLASHES);
?>

为什么要删除它们?这是非常好的JSON,斜杠在解码时会消失,因为我需要通过移动应用程序访问这个JSON。因此,json结果中的网站链接必须可以直接访问。为什么移动应用程序会有所不同?你不是在客户机上解码JSON吗?因为我不希望设备使用额外的处理器能力来处理可以在服务器端完成的事情。我想,让设备这样做需要更长的时间来加载数据。但是对于客户端,您想到了什么方法呢?如果您向客户端发送JSON,客户端应该能够解析JSON。如果不是,则更适合使用不需要复杂解析的简单数据格式。可能是CSV或它的自定义形式。取决于要发送的数据结构类型。为什么要删除它们?这是非常好的JSON,斜杠在解码时会消失,因为我需要通过移动应用程序访问这个JSON。因此,json结果中的网站链接必须可以直接访问。为什么移动应用程序会有所不同?你不是在客户机上解码JSON吗?因为我不希望设备使用额外的处理器能力来处理可以在服务器端完成的事情。我想,让设备这样做需要更长的时间来加载数据。但是对于客户端,您想到了什么方法呢?如果您向客户端发送JSON,客户端应该能够解析JSON。如果不是,则更适合使用不需要复杂解析的简单数据格式。可能是CSV或它的自定义形式。取决于您要发送的数据结构类型。非常感谢!你不知道我试图解决这个问题有多久了。第一个代码有效。但是第二个代码给出了一个错误,我不知道它是什么:注意(8):使用未定义的常量JSON_UNESCAPED_SLASHES-假定为“JSON_UNESCAPED_SLASHES”[APP/views/images/JSON/index.ctp,第3行]警告(2):JSON_encode()希望参数2很长,字符串给定[APP/views/images/JSON/index.ctp,第3行]也许您的PHP版本对于第二种方法来说还不够新(您需要5.4.0或更高版本,请参阅)——但至少第一种方法是有效的!谢谢!你不知道我试图解决这个问题有多久了。第一个代码有效。但是第二个代码给出了一个错误,我不知道它是什么:注意(8):使用未定义的常量JSON_UNESCAPED_SLASHES-假定为“JSON_UNESCAPED_SLASHES”[APP/views/images/JSON/index.ctp,第3行]警告(2):JSON_encode()希望参数2很长,字符串给定[APP/views/images/JSON/index.ctp,第3行]也许您的PHP版本对于第二种方法来说还不够新(您需要5.4.0或更高版本,请参阅)——但至少第一种方法是有效的!