首页 > 代码库 > yaml 格式
yaml 格式
yaml:Yet Another Markup Language
优点:
1、语法简单,大纲方式呈现,可读性高
2、使用空白字符和分行来分隔资料,可以用于 grep、Python、Perl、Ruby操作
3、减少了很多符号,引号,括号等
4、提取记录之前不需要全部读取数据
用途:可以做序列化或配置文件
格式:
1、字串不一定要用双引号标识;
2、在缩排中空白字符的数目并不是非常重要,只要相同阶层的元素左侧对齐就可以了(不过不能使用TAB字符);
3、允许在文件中加入选择性的空行,以增加可读性;
4、在一个档案中,可同时包含多个文件,并用“——”分隔;
5、选择性的符号“...”可以用来表示档案结尾(在利用串流的通讯中,这非常有用,可以在不关闭串流的情况下,发送结束讯号)。
缺点:YAML没有自己的数据类型的定义,而是使用实现语言的数据类型。
相同的字符串不同的语言解析的类型不同,存在兼容性问题。
yaml 中 map是有序的,json中没有
要将YAML置入JSON中,需要用引号框住,并转换内部的所有引号
php示例
$yaml = <<<EOD--- #文档开始符invoice: 34843 #map结构,注意空格date: "2001-01-23" #字符串可以不用引号,但有特殊字符时需要bill-to: &id001 #锚点 given: Chris family: Dumars address: lines: |- # | 后的字符串换行符会保留 458 Walkman Dr. Suite #292 city: Royal Oak state: MI postal: 48046ship-to: *id001 #引用锚点product:- sku: BL394D quantity: 4 description: Basketball price: 450- sku: BL4438H quantity: 1 description: Super Hoop price: 2392tax: 251.420000total: 4443.520000comments: Late afternoon is best. Backup contact is Nancy Billsmer @ 338-4338.... #文档开始符,单个文档可省略EOD;$parsed = yaml_parse($yaml);ee($parsed);
参考:
http://www.yaml.org/spec/1.2/spec.html#
在线js解析器
http://www.stay-stupid.com/?p=357
官方文档
yaml 格式
声明:以上内容来自用户投稿及互联网公开渠道收集整理发布,本网站不拥有所有权,未作人工编辑处理,也不承担相关法律责任,若内容有误或涉及侵权可进行投诉: 投诉/举报 工作人员会在5个工作日内联系你,一经查实,本站将立刻删除涉嫌侵权内容。