定制 jnessier/data-handler 二次开发

按需修改功能、优化性能、对接业务系统,提供一站式技术支持

邮箱:yvsm@zunyunkeji.com | QQ:316430983 | 微信:yvsm316

jnessier/data-handler

最新稳定版本:0.5.0

Composer 安装命令:

composer require jnessier/data-handler

包简介

Data container for arrays and more.

README 文档

README

Build Status Latest Stable Version Total Downloads License

Data handler for PHP arrays.

Table of Contents

Requirement

  • PHP >= 8.1

Installation

Install package of the data handler via Composer...

composer require jnessier/data-handler

...or manually download the latest release from here.

Usage

use DataHandler\Data;

// Create new data handler.
$data = new Data([
    // Array with key/value pairs
]);

// Get value by key.
$default = null; // Default value, when key doesn't exists
$value = $data->get('key', $default);
   
// Pull value by key and delete it afterward.
$default = null; // Default value, when key doesn't exists
$value = $data->pull('key', $default);

// Set value by key.
$overwrite = true; // Set FALSE to prevent overwrite existing value
$data = $data->set('key', 'value', $overwrite);

// Check whether value exists by key.
$valueExists = $data->has('key');
   
// Delete value by key.
$data->delete('key');

// Count number of values.
$numberOfValues = $data->count();

// Get all values as array.
$array = $data->getAll();

// Iterate trough values.
$data->each(function ($value, string $key) {
    // Callback for each key/value pair
});

// Clear values.
$data = $data->clear();

// Replace values. Existing values with similar keys will be overwritten.
$recursive = true; // Set FALSE to prevent recursive merge
$data = $data->replace([
    // Array with key/value pairs
], $recursive);

// Set array as values. Existing data will be overwritten.
$data = $data->setAll([
    // Array with key/value pairs
]);

// Set referenced array as values. Existing data will be overwritten.
$values = [
    // Array with key/value pairs
];
$data = $data->setAllReferenced($values);

Limitations

  • Only string as key supported
  • Only array as key/value pairs supported
  • No dot notation implementation
  • No type check for values

Contributors

  • Jonathan Nessier (jnessier)

If you would like to see this library develop further, or if you want to support me or show me your appreciation, please donate any amount through PayPal. Thank you! 🍻

Donate

License

Licensed under MIT.

Made in Switzerland with 🧀 and ❤️

统计信息

  • 总下载量: 6
  • 月度下载量: 0
  • 日度下载量: 0
  • 收藏数: 0
  • 点击次数: 0
  • 依赖项目数: 0
  • 推荐数: 0

GitHub 信息

  • Stars: 0
  • Watchers: 1
  • Forks: 0
  • 开发语言: PHP

其他信息

  • 授权协议: MIT
  • 更新时间: 2023-06-12