首页 > 解决方案 > json_encode 带有特殊字符和空格的字符串

问题描述

json_encode对于带有特殊字符和空格的字符串,我需要哪个过滤器?是否有更好的方法将json带有翻译字符串的对象从twig变量传递到模板Vue.js

我试过这个;

{# renders: äeiöü #}
<p>{{'string1'|trans}}</p>
{# renders: this is a string with spaces #}
<p>{{'string2'|trans}}</p>

{% set snippets = {
 string1: 'string1'|trans,
 string2: 'string2'|trans,
 } %}

<div id="app"  snippet={{ snippets|json_encode }}>
  <demo></demo>
</div>

<script>
  let snippetJSON = document.getElementById('app').getAttribute('snippet');

  //Output: {"string1":"\u00e4ei\u00f6\u00fc","string2":"this
  console.log(snippetJSON);
</script>

标签: jsonsymfonytwig

解决方案


感谢评论中的@deceze。该属性必须用引号引起来。@WPhil 也是正确的, JSON.parse() 部分也丢失了。


推荐阅读