【问题标题】:YAML setting value from another key来自另一个键的 YAML 设置值
【发布时间】:2013-02-25 01:24:00
【问题描述】:

如何在 YAML 中从另一个键设置值,例如:

example.emails:
     - ben@example.co
     - neb@example.co
     - teb@example.co

swift:
        to_email:   example.emails

【问题讨论】:

标签: php symfony yaml swiftmailer


【解决方案1】:

接受的答案是错误的。由于应用程序特定的原因,它可能对作者有用,但 YAML 规范不支持它。在 yaml 中重用值的正确方法是通过称为锚点的东西,像这样

x1: &my_anchor
  y: 'my val'
x2:
  <<: *my_anchor
  z: 3

在上面,我们使用锚my_anchor 标记x1 中的值。然后特殊语法 &lt;&lt;: *my_anchor 告诉 YAML 解析器将节点的子节点(在本例中为 y)插入同一级别。所以x2 现在会有两个孩子:yz

【讨论】:

    【解决方案2】:

    哦,找到了答案,只是似乎无法从 Google 找到好的文档:S

    example.emails: 
         - ben@example.co 
         - neb@example.co 
         - teb@example.co 
    
    swift: 
          to_email: "%example.emails%"
    

    【讨论】:

    • 我不知道这个答案的真正含义。百分比 (%) 有什么作用?这会以某种方式进行插值吗?一个完整的例子将不胜感激。
    • 这对我来说仍然很不清楚。一个额外的例子,一个结果的演示,或者一个你发现这个的文档的链接会很棒。
    • YAML 规范中没有任何内容描述在加载此示例时/之后需要执行的任何特殊操作。如果 PHP / Synfony 对 "%example.emails%" 做了一些特别的事情,那可能是这样,但这与问题无关。
    • 直到将example.emails 作为参数放置后才会起作用
    猜你喜欢
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2014-07-08
    • 1970-01-01
    • 2012-06-09
    • 2018-09-27
    • 2010-11-17
    相关资源
    最近更新 更多