PHP 实现的 TOML 解析器。

1.1.1 2014-02-25 09:21 UTC

This package is not auto-updated.

Last update: 2024-09-11 20:42:14 UTC


README

Build Status

用 PHP 编写的 TOML 解析器。目前支持 TOML 规范的 100%:日期、多行数组、键组等(包括所有更小的限制,如相同类型的数组键组覆盖规则)。

要求

  • PHP 5.3
  • Composer

安装

使用 Composer 安装 Toml 包。包详情可以在 Packagist.org 上找到 此处

将以下内容添加到您的 composer.json 并运行 composer update

"require": {
	//...
    "jamesmoss/toml": "dev-master"
}

您可以使用此库而不使用 Composer,但您需要提供自己的 PSR-0 兼容的自动加载器。实际上,您应该使用 Composer。

使用

Toml\Parser 有两个静态方法 fromStringfromFile,它们是自解释的。两者都返回一个关联数组。如果您的 TOML 文档无法解析,将抛出一个包含有用错误信息的 Exception

use Toml\Parser;

// Load directly from a string
$toml = Parser::fromString('name = "James Moss"');

var_dump($toml['name']); // outputs 'James Moss'.

// Load from a file instead
$toml = Parser::fromFile(__DIR__ . '/config.toml');

运行测试

目前测试覆盖率是 100%。如果您想自己运行测试,请使用以下方法

$ composer update
$ phpunit

贡献

TOML 规范经常变化,因为它还处于早期阶段;如果您发现我遗漏了什么,请fork此仓库,创建一个新分支并提交一个 pull request。确保您添加的任何功能都有单元测试覆盖。

待办事项

  • 更好的文档和 docblocks
  • 抛出更多语义异常,标准化错误信息格式。