evilfreelancer/yaml-php
Composer 安装命令:
composer require evilfreelancer/yaml-php
包简介
Small PHP library for importing and exporting with validation of YAML configuration files.
README 文档
README
Small PHP library for importing and exporting with validation of YAML configuration files.
composer require evilfreelancer/yaml-php
For correct work you need install YAML extension of PHP interpreter.
Available methods
read- Read YAML from file or URL (autodetect)add- Add without replace array of parametersset- Add with replace array of parametersvalidate- Check array of parameters in memory by validation templateget- Return array of prepared parameterssave- Export parameters in YAML format to file on filesystemshow- Return YAML in plain text format
How to use
More examples here.
Basic example of usage
<?php require_once __DIR__ . '/../vendor/autoload.php'; use \EvilFreelancer\Yaml\Yaml; // Object for work with YAML $yaml = new Yaml(); // Simple array from which need build YAML $array = [ 'string' => 'zzz', 'integer' => 42, 'bool' => true, ]; // Generate YAML and print to stdOut $yaml_text = $yaml->set($array)->show(); echo $yaml_text;
Output is:
--- string: zzz integer: 42 bool: true ...
Read YAML from file
$yaml_array = $yaml->read('example.yaml')->get(); print_r($yaml_array);
Output is:
Array
(
[string] => zzz
[integer] => 42
[bool] => 1
)
How to append array
$array = [ 'string' => 'zzz', 'integer' => 42, 'bool' => true, ]; $append = [ 'array_simple' => [ 'item1', 'item2', 'item3' ], 'array_md' => [ 'string1' => 'text', 'integer' => 42, 'bool' => true ] ]; // Set array, then append additional array and show to stdOut echo $yaml ->set($array) ->add($append) ->show();
Output is:
--- string: zzz integer: 42 bool: true array_simple: - item1 - item2 - item3 array_md: string1: text integer: 42 bool: true ...
How to use validation
// Schema by which we need make validation $schema = [ 'string' => Types::STRING, 'integer' => Types::INT, 'bool' => Types::BOOL, 'array_simple' => Types::ARRAY, 'array_md' => [ 'string1' => Types::STRING, 'integer' => Types::INT, 'bool' => Types::BOOL ] ]; // Array from which we need make YAML $array = [ 'string' => 'zzz', 'integer' => 42, 'bool' => true, 'array_simple' => [ 'item1', 'item2', 'item3' ], 'array_md' => [ 'string1' => 'text', 'integer' => 42, 'bool' => true ] ]; // Set array and execute validation procedure echo $yaml ->set($array) ->validate($schema) ->show();
In result you should saw YAML, if something wrong will be error with detailed "Stack Trace".
Links
统计信息
- 总下载量: 14
- 月度下载量: 0
- 日度下载量: 0
- 收藏数: 2
- 点击次数: 1
- 依赖项目数: 1
- 推荐数: 0
其他信息
- 授权协议: MIT
- 更新时间: 2018-03-01