新在Symfoob娱乐下载ny 3.3:定制YAML标记
2017年2月13日·发表的哈维尔Eguiluz
警告:这篇文章是关于一个不受支持的Symfony的版本。ob娱乐下载其中一些信息可能是过时了。阅读最近的Symfony文档ob娱乐下载。
提供的
Guilhem Niot
在# 21194。
的YAML格式是众所周知的是简单易读,但在引擎盖下面定义了很多高级特性的复杂需求。其中一个特性YAML的标签,主要是用于定义显式数据类型。
的ob娱乐下载Symfony Yaml组件已经支持一些标记,如二进制! !
用于存储二进制数据! php /常量:
指的是PHP常数。你现在ob娱乐下载可以在Symfony 3.3定义自己的YAML标签多亏了新国旗Yaml: PARSE_CUSTOM_TAGS
。
自定义标记是任意的字符串开始的!
字符,如my_tag !
价值在以下例子:
1
my_tag !{foo:酒吧}
使用下面的PHP代码来解析:
1 2 3 4 5 6 7 8
使用ob娱乐下载\组件\Yaml\Yaml;美元yaml=”!my_tag {foo: bar}”;美元配置= Yaml::解析(美元yaml,Yaml::PARSE_CUSTOM_TAGS);美元标签=美元配置- >getTag ();/ / $ tag = ' my_tag '美元价值=美元配置- >getValue ();/ / $ value =数组(“foo”= >“酒吧”)
YAML的语义标记依赖于每个应用程序,所以通用解析器将这些值ob娱乐下载
类。在上面的例子中,美元配置
变量现在包含:
1
TaggedValue (“my_tag”,数组(“foo”= >“酒吧”));
支持YAML标签是双向的,所以如果您的PHP代码包含TaggedValue
对象,他们会变成YAML标签:
1 2 3 4 5 6 7 8
美元配置=数组(新TaggedValue (“foo”,数组(“酒吧”)),新TaggedValue (“quz”,数组(“记者”)));/ /生成的YAML代码是:/ / - ! foo(酒吧)/ / - ! quz (baz)
发表在#生活在边缘
评论
@Kamil我改第三个片段贝蒂解释我们所显示的配置变量包含美元。
Guilhem Niot
说2月15日,2017年在12
@Alexandre用于di的新的迭代器功能组件。
它不为您构建对象,它返回一个TaggedValue价值,你必须转换成任何你想要的。
重要注意事项:标记标量不支持因为公元前但他们将在4.0。
它不为您构建对象,它返回一个TaggedValue价值,你必须转换成任何你想要的。
重要注意事项:标记标量不支持因为公元前但他们将在4.0。
评论都关门了。
以确保评论保持相关,他们关闭了旧的帖子。
Alex Rock is a certified Symfony engineer.
Get certified! Online exams available in all countries.
Register Now