Warning: file_get_contents(/data/phpspider/zhask/data//catemap/4/string/5.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
String YAML中包含引号的多行字符串_String_Yaml_Silex - Fatal编程技术网

String YAML中包含引号的多行字符串

String YAML中包含引号的多行字符串,string,yaml,silex,String,Yaml,Silex,我有一个YAML配置文件,可以包含一点CSS用于定制目的 css.custom: > .company-logo { height: 60px; padding-top: 15px; } .input[type=\"text\"] { background: white; border: 1px solid gray; border-radius: 3px; } 然后在名为base.css.twig的文件中呈现,如下所示: {{ c

我有一个YAML配置文件,可以包含一点CSS用于定制目的

css.custom: >
  .company-logo {
    height: 60px;
    padding-top: 15px;
  }
  .input[type=\"text\"] {
    background: white;
    border: 1px solid gray;
    border-radius: 3px;
  }
然后在名为
base.css.twig的文件中呈现,如下所示:

{{ css.custom }}
我的问题是,
input[type=\“text\”]
中的引号无法正确呈现,因为反斜杠按字面形式呈现,引号呈现为
。有人知道如何成功呈现原始引号吗

生成的渲染:

input[type="text"]

在YAML多行标量字符串中不能转义任何内容。您不必转义引号,因此应省去
\

css.custom: >
  .company-logo {
    height: 60px;
    padding-top: 15px;
  }
  .input[type="text"] {
    background: white;
    border: 1px solid gray;
    border-radius: 3px;
  }

你也应该考虑如果你真的想要折叠(<代码> <代码>),而不是多行标量的文字(<代码> <代码> >样式。< /P> 委员会:

折叠样式由“>”指示符表示。它类似于文字样式;但是,折叠标量可以进行行折叠

而且没有逃逸:

无法在文字标量内转义字符。这将它们限制为可打印字符。此外,也无法中断长文字行


解决方案是使用
{{css.custom | raw}


我以为我已经在使用
raw
,但我错了。

这并不能回答我的问题,因为引用被呈现为
。使用
|
对我来说是一样的。事实上,我认为一行中的所有内容都更适合这个目的。它也不能解决问题。如我所述,从
|
的更改是可选的。重要的一点是,您似乎认为需要通过在引号之前加上反引号来转义引号,但在折叠/文字YAML字符串中,您不能这样做。(如果您的处理软件需要反向报价,那么这与YAML无关,您错误地标记了问题)。我认为我们不能假设标记为
YAML
的问题确实可以用YAML知识回答,因为OP可能不清楚问题与YAML无关,答案告诉他们这当然是有帮助的。@flyx我一直在尝试清理问题,其中恰好涉及到,但根据标签描述,与问题无关),因为无关标签无助于提问者,并分散了未来对“真正”YAML相关问题的搜索。但这就像是逆流而上,似乎没有人阅读标记描述。YAML提供了一个
css.custom
键,但在Twig中,您可以访问变量
css.customCss
。此外,给定的细枝代码可能不足以识别错误。您是否处于
{%autoescape%}
环境中?如果删除
|raw
,会发生什么?我的错,我在示例中犯了一个错误。我将对其进行测试,并在有原始过滤器和无原始过滤器的情况下发布结果。@flyx证明您是对的。这一直是个问题!我看错地方了,生肉不见了!