php的扩展 - yaml

今天查看php扩展库时(http://pecl.php.net/package-s...),看到有个叫yaml的扩展位列榜首,竟有2000多万下载数,这么牛逼的东西我咋没听说过那?既然孤陋寡闻了,那就赶紧学习学习吧。
php的扩展 - yaml

什么是yaml?
YAML 是专门用来写配置文件的语言,非常简洁和强大,远比 JSON 格式方便,其主要功能用途类似于XML或JSON。
YAML参考了其他多种语言,包括:XML、C语言、Python、Perl以及电子邮件格式RFC2822。
由于实现简单,解析成本很低,YAML特别适合在脚本语言中使用。列一下现有的语言实现:Ruby,Java,Perl,Python,PHP,OCaml,JavaScript,除了Java,其他都是脚本语言,移植性非常强。

YAML的设计目的:
1、容易人类阅读
2、适合表示程序语言的数据结构
3、可用于不同程序间交换数据
4、支持泛型工具
5、支持串行处理
6、丰富的表达能力和可扩展性
7、易于使用

php 中使用yaml,需要安装php-yaml扩展,安装步骤我就不在这里赘述了。
安装成功后,使用phpinfo()探针查看是否安装成功
php的扩展 - yaml

使用示例:
<?php

$company = array(
    'name'     => '51Talk',
    'type'       => 'English train',
    'teacherNum' => 8000
);

// 生成yaml格式

$yamlData = yaml_emit($company);
var_dump($yamlData);

/* 输出的yaml数据格式:
string(58) "---
name: 51Talk
type: English train
teacherNum: 8000
...
"
 */

// 转换成php变量
$parsed = yaml_parse($yamlData);

// yaml格式数据转换回php变量是否相等
var_dump($parsed == $company); // bool(true)

?>

就像json替代xml一样,未来yaml有可能会替代json哦,还没研究的你,赶紧研究研究吧。

php的扩展 - yaml

关注我的公众号,长期有干货

相关推荐