詹姆斯莫斯 / toml
PHP 实现的 TOML 解析器。
1.1.1
2014-02-25 09:21 UTC
Requires
- php: >=5.3.0
This package is not auto-updated.
Last update: 2024-09-11 20:42:14 UTC
README
用 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
有两个静态方法 fromString
和 fromFile
,它们是自解释的。两者都返回一个关联数组。如果您的 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
- 抛出更多语义异常,标准化错误信息格式。