承接 serima/hashee 相关项目开发

从需求分析到上线部署,全程专人跟进,保证项目质量与交付效率

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

serima/hashee

最新稳定版本:0.0.1

Composer 安装命令:

composer require serima/hashee

包简介

hash for search

关键字:

README 文档

README

Build Status Scrutinizer Code Quality

Very simple optimization using hash lookups to search an array.

Installation

composer require serima/hashee

Usage

<?php

use Serima\Hashee\Hashee;

$hashForSearch = array();
Hashee::add($hashForSearch, 'super');
Hashee::add($hashForSearch, 'bad');
Hashee::add($hashForSearch, 'word');

Hashee::in('good', $hashForSearch); // false
Hashee::in('bad', $hashForSearch); // true
Hashee::release($hashForSearch);

$bannedUserNames = array('Jim', 'Taro', 'Fred');
Hashee::addBulk($bannedUserNames);
Hashee::delete($bannedUserNames, 'Fred');
Hashee::in('Jim', $bannedUserNames); // true
Hashee::in('Fred', $bannedUserNames); // false
Hashee::release($bannedUserNames);

Benchmark

You can see the benchmark script in tests/Benchmark.php Graphical here. https://docs.google.com/spreadsheets/d/11zw--aiHH33umh86y_ctiEx87XTsUIK7YMHqctZ_FzM/edit?usp=sharing

% php tests/Benchmark.php
========================================
elementNumber : 5
in_array: 0.030714988708496
hashee:   0.013134956359863
========================================
========================================
elementNumber : 10
in_array: 0.032805919647217
hashee:   0.012555122375488
========================================
========================================
elementNumber : 100
in_array: 0.15763115882874
hashee:   0.010236978530884
========================================
========================================
elementNumber : 1000
in_array: 1.3289721012115
hashee:   0.010061025619507
========================================
========================================
elementNumber : 10000
in_array: 13.358424901962
hashee:   0.0097849369049072
========================================

Thanks

Hashee is inspired by this entry written by @mtdowling.

Favor Hash Lookups Over Array Searches

I coded benchmark script using example from it.

References

http://stackoverflow.com/questions/2473989/list-of-big-o-for-php-functions

LICENSE

MIT License.

统计信息

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

GitHub 信息

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

其他信息

  • 授权协议: MIT
  • 更新时间: 2015-10-11