laravel print json没有转换为htmlentities

时间:2017-04-07 09:17:29

标签: php json laravel-5.3 laravel-blade

嗨,我是模板和laravel的新手。

我已经使用

将laravel分隔符更改为[[]]和[[[]]]
Blade::setContentTags("[[", "]]");
Blade::setEscapedContentTags("[[[", "]]]");

现在我想将json传递给像

这样的javascript变量
var somevariable = [[json_encode($variableFromController)]];

但是这会将json字符串转换为html实体,如

{"index":200}

我搜索并发现{{!!json_encode($variableFromController)!!}}应该可以正常工作,但在[[!!json_encode($variableFromController)!!]]这样的系统中执行此操作不会产生任何影响。

我知道我可以做<?php echo json_encode($variableFromController) ?>这样的事情,但这是我想要尝试的最后一件事。我能做什么laravel特定的事情?

1 个答案:

答案 0 :(得分:1)

首先Blade::setContentTags("[[", "]]");表示将{!!替换为[[。并且Blade::setEscapedContentTags("[[[", "]]]");正在用{{替换[[[

因此,对于您的条件[[ json_encode($variableFromController) ]],相当于{!! json_encode($variableFromController) !!}