aviator/optionally
Composer 安装命令:
composer require aviator/optionally
包简介
A container for keyed booleans.
README 文档
README
Overview
Optionally is a keyed store of booleans. It can be used for anything but usually to store options.
Installation
Via Composer:
composer require aviator/optionally
Testing
Via Composer:
composer test
Usage
Instantiate Optionally with or without an array. You can add the array later with add() or replaceWith() (see below).
The array should have string keys and boolean values. It's important to note that any pairs with non-string keys and non-boolean values will be silently discarded—they will not be coerced.
$options = Optionally::make([ 'option1' => true, 'option2' => false, 0 => false, 'test' => 'value' ]); // [0 => false] and ['test' => 'value'] will be discarded.
Get the underlying array with all():
$options->all(); // ['option1' => true, 'option2' => false]
Get the keys of the underlying array with keys():
$options->keys(); // ['option1', 'option2']
Get the value of a key if it exists (or null if it doesn't) with get():
$options->get('option1'); // true $options->get('someOptionThatDoesntExist'); // null
Find whether or not a key exists with has():
$options->has('option2'); // true $options->has('someOptionThatDoesntExist'); // false
Trash the existing options and replace them with replaceWith():
$options->replaceWith(['option3' => true, 'option4' => false]); $options->all(); // ['option3' => true, 'option4' => false]
Add a new array to the existing options array, overwriting existing keys with add():
$options->add(['option1' => false, 'option3' => true]); $options->all(); // ['option1' => false, 'option2' => false, 'option3' => true]
Set a single key value pair with set():
$options->set('option3', false); $options->all(); // ['option1' => true, 'option2' => false, 'option3' => false]
Trash a single key value pair with remove():
$options->remove('option1'); $options->all(); // ['option2' => true]
An instance of Optionally is iterable:
foreach ($options as $key => $value) { /* ... */ }
It's also countable:
count($foreach); // 2
Other
License
This package is licensed with the MIT License (MIT).
统计信息
- 总下载量: 18
- 月度下载量: 0
- 日度下载量: 0
- 收藏数: 1
- 点击次数: 0
- 依赖项目数: 0
- 推荐数: 0
其他信息
- 授权协议: MIT
- 更新时间: 2017-12-02