PHP Yaml 解析器

v1.0.0 2014-03-19 05:23 UTC

This package is not auto-updated.

Last update: 2024-09-24 04:43:51 UTC


README

Build Status

PHP Yaml

PHP 的 Yaml 加载库

--- %YAML:1.1 标题:简单 & 轻量级 PHP YAML 类 版本:1.0 作者:[chris wanstrath (chris@ozmm.org), vlad andersen (vlad.andersen@gmail.com), erik amaru ortiz (aortiz.erik@gmail.com)] 链接:[http://www.yaml.org, https://github.com/eriknyk/Yaml] 许可证:[MIT 许可证, https://open-source.org.cn/licenses/mit-license.php] 版权:"(c) 2005-2006 Chris Wanstrath, 2006-2011 Vlad Andersen, 2012 Erik Amaru Ortiz" 测试平台:[php 5.2.x, php 5.3.10]

安装:> 只需将 Yaml.php 复制到工作目录并包含它即可使用!

关于:> 来自 www.yaml.org

"YAML(tm) (与 'camel' 同韵) 是一种面向人类友好、跨语言的、基于 Unicode 的数据序列化语言,旨在围绕敏捷编程语言的常见本地数据结构设计。它在从配置文件到互联网消息到对象持久化到数据审计的各种编程需求中非常有用。结合 Unicode 字符标准,YAML 规范提供了理解 YAML 版本 1.1 和创建处理 YAML 信息的程序所需的所有信息。

YAML(tm) 平衡了以下设计目标:- YAML 文档对人类来说非常易读。- YAML 与脚本语言很好地交互。- YAML 使用宿主语言的本地数据结构。- YAML 具有一致的信息模型。- YAML 允许基于流的处理。- YAML 具有表现力和可扩展性。- YAML 易于实现。"

YAML 很有意义。它易于使用,易于学习,而且很酷。正如幸运的 stiff 命名为 why 的人曾经说的,“YAML 是一束光。”

如果您是 YAML 新手,我们建议您尝试 YAML 五分钟:- http://yaml.kwiki.org/?YamlInFiveMinutes

如果您没有五分钟,请注意本 README 是一个完全有效的 YAML 文档。深入研究,使用 Spyc 将此 YAML 文件或任何 YAML 文件加载到数组中,看看将友好的文本转换为可用数据有多容易。

Spyc 的目的是提供一个纯 PHP 的替代方案,用于 Syck,一个简单的 API,用于加载和转储 YAML 文档,一个理解 YAML 规范的子集的 YAML 加载器,并将 YAML 的荣耀进一步传播到 PHP 大众。

如果您有任何犹豫(“YAML 的可用子集?!”),请访问 http://yaml.org/start.html。Spyc 完全理解那里显示的 YAML 文档,这是一个具有超出普通配置文件需求的功能的文档。自己试试,然后开始享受 YAML 带给你的平静。

一些内容和一个土豆

  • 概念:将 YAML 文档加载到 PHP 中 简要:> $yaml 将成为 wicked.yaml 中所有数据的数组。 代码:|

    include('spyc.php');

    $yaml = Spyc::YAMLLoad('wicked.yaml');

  • 概念:将 YAML 字符串加载到 PHP 中 简要:> $array 将看起来像这样:array('A YAML','document in a','string') 代码:|

    include('spyc.php');

    $yaml = '- A YAML\n- document in a\n- string.'; $array = Spyc::YAMLLoad($yaml);

  • 概念:将 PHP 数组转储为 YAML 简要:> $yaml 将成为从 $array 创建的 YAML 文档的字符串。 代码:|

    include('spyc.php');

    $array['name'] = 'chris'; $array['sport'] = 'curbing';

    $yaml = Spyc::YAMLDump($array);

现有技术

  • 谁:[Brian Ingerson, Clark Evans, Oren Ben-Kiki] 为什么?> YAML规范真的是一项伟大的工作,这些人在这方面做得非常出色。像YAML这样的简单优雅的语言已经很长时间没有出现了,知道这样有能力的人认真对待这项任务并以智慧和力量执行,真是令人耳目一新。除了他们对YAML解析器和相关项目的各种值得注意的贡献外,YAML.pm的README是知识寻求者的宝贵信息库。谢谢,各位。

  • 谁:lucky stiff why?> 作为Syck的作者,Syck是Ruby语言YAML类和方法的代码,why是间接地(直接地)对我第一次接触YAML(作为一个Ruby网络应用的配置文件)负责,并在之后花了无数个小时玩这个新的数据格式。Syck的README是一个YAML文件,因此也是这个文件以及甚至这个软件的灵感来源。

  • 谁:Steve Howell why?> Python的YAML实现。PyYAML的README文件也是YAML,因此它也启发了这个README文件的YAML格式。

  • 谁:[Rasmus Lerdorf, Zeev Suraski, Andi Gutmans等] why?> PHP在它擅长的领域做得很好。它也为我付了很多账单。谢谢。

问题:报告 > 请参见Spyc的Sourceforge项目页面以获取有关报告错误的信息。速度 > 这个实现不是为了速度而设计的。相反,它是为了那些需要纯PHP实现的YAML解析器并且不太关心性能的人。如果你想要速度,请查看Syck。深度 > 这个解析器绝对不是一个完整的YAML解析器。有关支持的功能和未来计划,请查看网站。Unicode > YAML应该支持Unicode,但现在我们只是使用ASCII。PHP对Unicode的支持很差,但谁知道未来会怎样。

资源

感谢

  • Adam Wood
  • Daniel Ferreira
  • Aaron Jensen
  • Mike Thornton
  • Fabien Potencier
  • Mustafa Kumas