laravel json结果替换" /"用" \ /"

时间:2016-07-02 19:52:08

标签: php json

您好,我想知道当我使用laravel 5返回JSON结果时,它会将每个'/'替换为'\/',这会导致我遇到麻烦,因为我通过控制器返回的网址不再有效

例如,在控制器中:

$url = 'icon/nature/animals/cat-2.png';
$result = array('data'=>$url);

return response()->json($result);

在jquery响应中返回'icons\\/nature\\/animals\\/cat-2.png'

我怎样才能避免这种情况发生,谢谢

2 个答案:

答案 0 :(得分:0)

你必须使用encodeURI(内置javascript函数):

例如:

encodeURI('http:\/\/www.google.com') => 'http://www.google.com'

encodeURI('icons\/nature\/animals\/cat-2.png') => 'icons/nature/animals/cat-2.png'

答案 1 :(得分:0)

这是json()方法的蓝图:

public function json($data = [], $status = 200, array $headers = [], $options = 0)

使用$options参数设置所需的转义选项。要查看JSON常量的完整列表,请选中以下链接:http://php.net/manual/en/json.constants.php

您将需要JSON_UNESCAPED_SLASHES常量来实现您需要的行为。