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

什么是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()探针查看是否安装成功

使用示例:

$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扩展,php的扩展 - yaml相关推荐

  1. 扩展你的Kubernetes集群:理解水平扩展与垂直扩展

    这扩展你的Kubernetes集群:理解水平扩展与垂直扩展 一.前言 1.1 什么是 Kubernetes 1.2 扩展集群规模的必要性 二.集群规模扩展概述 2.1 水平扩展 vs 垂直扩展 2.2 ...

  2. 【Groovy】Groovy 扩展方法 ( 扩展静态方法示例 | 扩展实例方法示例 | 扩展实例方法与扩展静态方法代码相同 )

    文章目录 一.扩展静态方法示例 二.扩展实例方法示例 三.扩展实例方法与扩展静态方法代码相同 一.扩展静态方法示例 在上一篇博客 [Groovy]Groovy 扩展方法 ( Groovy 扩展方法引入 ...

  3. 【Groovy】Groovy 扩展方法 ( Groovy 扩展方法引入 | 分析 Groovy 中 Thread 类的 start 扩展方法 )

    文章目录 一.Groovy 扩展方法引入 二. 分析 Groovy 中 Thread 类的 start 扩展方法 一.Groovy 扩展方法引入 Groovy 可以对 JDK 中的一些类进行 方法扩展 ...

  4. 【Google Play】APK 扩展包 ( 2021年09月02日最新处理方案 | 扩展文件名格式 | 扩展文件下载存放地址 )

    文章目录 前言 一.当前 Google Play 上传 APK 文件现状 二.APK 扩展文件名格式 三.APK 扩展文件下载地址 四.博客资源 前言 2021年08月01日 之后 , Google ...

  5. 【Kotlin】扩展属性 ( 扩展变量属性 | 扩展常量属性 | 注意事项 | 本质分析 )

    文章目录 I . 扩展属性 总结 II . 扩展属性 定义格式 III . 扩展属性 标准示例 IV . 扩展属性 注意事项 V . 扩展属性 本质分析 VI . 扩展属性 代码示例解析 I . 扩展 ...

  6. IPv6扩展头部 (一) 扩展头部格式、类型与扩展选项

    之前几篇博客介绍了IPv6的扩展头部,包括分片头部和路由头部.接下来介绍一下IPv6扩展头部以及扩展选项的内容,可能会有这样的疑问,有了扩展头部怎么还需要扩展选项?扩展选项是干嘛用的?本篇博客就介绍相 ...

  7. ubuntu所有php扩展php-7.0扩展列表

    ubuntu所有php扩展php-7.0扩展列表 sudo apt-get install php7.0-bcmath sudo apt-get install php7.0-bz2 sudo apt ...

  8. 存储器容量扩展——位扩展、字扩展

    存储器(二)--存储容量扩展 前言:(基本概念) 存储空间:CPU决定 存储器:用户需求决定(4G,8G)(8G的存储器1各芯片能否完成用户需求?如果不能完成,存储器由若干个芯片组成) 存储芯片:芯片 ...

  9. java的整数扩展,浮点数扩展,字符扩展,转义字符,布尔值扩展

    java的整数扩展,浮点数扩展,字符扩展,转义字符,布尔值扩展 public static void main(String[] args) {//整数扩展 进制 二进制0b 十进制 八进制0 十六进 ...

最新文章

  1. Deformable ConvNets--Part2: Spatial Transfomer Networks(STN)
  2. 修改文件的所属用户和所属用户组
  3. 小波变换 完美通俗讲解 之 二
  4. CodeDay#7 启动 | 北京欢迎你
  5. 我是如何用Jquery实现网页缩小放大的
  6. linux磁盘管理的命令行,Linux磁盘管理命令介绍
  7. python中pickle模块_Python pickle模块的用法
  8. 八年数据库之路的感悟
  9. 【报告分享】2021年00后生活方式洞察报告.pdf(附下载链接)
  10. 【Excel】数据的排序、筛选和分类汇总
  11. 使用多线程实现多客户端的连接(通过Socket实现TCP编程)
  12. jar包是干什么用的
  13. VC的静态链接库 动态链接库
  14. 运筹学基础【八】 之 图论方法
  15. ssh authentication魔鬼细节--.ssh文件夹权限
  16. 线上Mysql数据库崩溃事故的原因和处理
  17. 基于matlab的对称振子天线分析,基于Matlab的对称振子天线分析
  18. amd一键超频怎么用_老锅教你超频-AMD处理器篇
  19. VS编译错误C4996 'scanf': This function or variable may be unsafe.
  20. 丝绸之路翻译软件测试,域渗透测试指南之GPO和OU详解(下)

热门文章

  1. java 数据结构实例_数据结构(Java)——栈的实例
  2. mysql row 转int_mysql_row[]取值转换有关问题,
  3. 高会的计算机模块,2017高会《职称计算机》模块精讲:写字板和便笺
  4. php屏幕抓取,PHP抓屏函数实现屏幕快照代码分享
  5. Spring Boot + MDC 实现全链路调用日志跟踪
  6. Log4j2又爆雷!2.16.0存在DOS攻击风险,升级到2.17.0可解决!
  7. RateLimiter 的底层实现是啥?
  8. 新年新气象,该换一波壁纸了!
  9. 文件上传的单元测试怎么写?
  10. 详解模板注入漏洞(下)