andydune / select-closest-number-from-range

它有助于将输入数字的范围缩小到指定的范围。

v2.0.0 2018-09-12 07:40 UTC

This package is auto-updated.

Last update: 2024-09-13 19:14:14 UTC


README

它有助于将大量输入数字缩小到指定集合。

Build Status Software License Packagist Version Total Downloads

它为封装数组提供了方便的接口。实现任何数量过滤器的策略模板。

安装

使用Composer安装

composer require andydune/select-closest-number-from-set

或者如果Composer没有全局安装

php composer.phar require andydune/select-closest-number-from-set

或者编辑您的composer.json

"require" : {
     "andydune/select-closest-number-from-set": "^2"
}

并执行命令

php composer.phar update

解决任务

允许的数字集合有硬性限制。但在输入中可以是任何数字。我们需要选择允许集合中最接近的数字来使用。

这个类可以帮助解决这个任务。

默认情况下,脚本选择较低接近的数字

use AndyDune\SelectClosestNumberFromSet;
$object = new SelectClosestNumberFromSet([0, 20, 40]);
$next = $object->select(-5); // = 0
$next = $object->select(5); // = 0
$next = $object->select(39); // = 20
$next = $object->select(100); // = 40

使用selectHigh方法选择较高允许的数字

use AndyDune\SelectClosestNumberFromSet;
$object = new SelectClosestNumberFromSet([0, 20, 40]);
$object->selectHigh();
$next = $object->select(-5); // = 0
$next = $object->select(5); // = 20
$next = $object->select(39); // = 40
$next = $object->select(100); // = 40