krak/array
最新稳定版本:v0.4.3
Composer 安装命令:
composer require krak/array
包简介
A collection of missing php array functions
README 文档
README
The array library is just a simple collection of missing php array functions.
Installation
Install with composer at krak/array
Usage
<?php use Krak\Arr; $data = [ 'a' => [ 'b' => 1, ], ]; $res = Arr\get($data, 'a.b'); assert($res == 1); Arr\set($data, 'c.d', 2); assert($data['c']['d'] == 2); // or use the global aliases array_get($data, 'a.b');
There also is a Bag class which provides an object oriented API for the arrays.
<?php use Krak\Arr; $bag = new Arr\Bag(); $bag->set('a.b', 1); var_dump($bag->raw()); /* array(1) { ["a"]=> array(1) { ["b"]=> int(1) } } */
API
The following are defined in the namespace Krak\Arr:
array expand(iterable $iterable, string $separator = '.')
array index_by(iterable $iterable, string $key)
array udiff_stable(iterable $a, iterable $b, callable $cmp)
mixed get(array $data, string $key, mixed $else = null)
mixed getIn(array $data, array $key, mixed $else = null);
bool has(array $data, string $key, string $sep = '.')
bool hasIn(array $data, array $key)
void set(array &$data, string $key, mixed $value, string $sep = '.')
void del(array &$data, string $key, string $sep = '.')
You can also use the globally defined aliases
array_expand
array_index_by
array_udiff_stable
array_get
array_has
array_set
array_del
Or the Krak\Arr\Bag class:
<?php namespace Krak\Arr; class Bag implements ArrayAccess { public function __construct(array $data = []) public function get($key, $else = null, $sep = '.') public function getIn(array $key, $else = null) public function set($key, $value, $sep = '.') public function has($key, $sep = '.') public function hasIn(array $key) public function del($key, $sep = '.') public function raw() }
Tests
Run tests with phpunit
统计信息
- 总下载量: 5.09k
- 月度下载量: 0
- 日度下载量: 0
- 收藏数: 2
- 点击次数: 1
- 依赖项目数: 2
- 推荐数: 0
其他信息
- 授权协议: MIT
- 更新时间: 2015-05-07