定制 kdabrow/math 二次开发

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

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

kdabrow/math

最新稳定版本:1.0.0

Composer 安装命令:

composer require kdabrow/math

包简介

Objective wrapper over BCMath

README 文档

README

GitHub Workflow Status Packagist Version

Math

Objective wrapper over BCMath

Installation

Install via composer

composer require kdabrow/math

Usage

First declare mutable number. Second string is validated and mutated to correct format. Here are examples with converted number in the comment:

use Kdabrow\Math\Number;

new Number("100"); // 100

new Number("-100"); // -100

new Number("100,11"); // 100.11

new Number("100.11"); // 100.11

new Number("10,000.11"); // 10000.11

new Number("10 000.11"); // 10000.11

new Number("10'000.11"); // 10000.11

new Number(".11"); // 0.11

new Number(",11"); // 0.11

new Number("0,11"); // 0.11

new Number("0.11"); // 0.11

Then use API provided by Number class. All methods (with the 'sqrt' exception) accept arguments in a given formats:

// numeric string
$number->add('100');

// Number object
$number->add(new Number('100'));

// array of strings  
$number->add(['100', '100']);

// array of Number objects
$number->add([new Number('100'), new Number('100')]);
 
// object implementing ArrayAccess interface
$number->add(new Collection()); 

// many formats or same elements at the same time
$number->add('100', new Number('200'), ['100', new Number('200')]);  

Add

use Kdabrow\Math\Number;

$number = new Number('700');

$number->add('100'); // 800

Subtract

use Kdabrow\Math\Number;

$number = new Number('700');

$number->subtract('100'); // 600

Multiply

use Kdabrow\Math\Number;

$number = new Number('700');

$number->multiply('2'); // 1400

Divide

use Kdabrow\Math\Number;

$number = new Number('700');

$number->divide('2'); // 350

Square root

use Kdabrow\Math\Number;

$number = new Number('16');

$number->sqrt(); // 4

Power

use Kdabrow\Math\Number;

$number = new Number('2');

$number->pow('3'); // 8

Is equal

use Kdabrow\Math\Number;

$number = new Number('2');

$number->isEqual('3'); // false
$number->isEqual('2'); // true
$number->isEqual('1'); // false

Is equal or bigger

use Kdabrow\Math\Number;

$number = new Number('2');

$number->isEqualOrBigger('3'); // false
$number->isEqualOrBigger('2'); // true
$number->isEqualOrBigger('1'); // true

Is equal or lower

use Kdabrow\Math\Number;

$number = new Number('2');

$number->isEqualOrLower('3'); // true
$number->isEqualOrLower('2'); // true
$number->isEqualOrLower('1'); // false

Is lower

use Kdabrow\Math\Number;

$number = new Number('2');

$number->isLower('3'); // true
$number->isLower('2'); // true
$number->isLower('1'); // false

Is bigger

use Kdabrow\Math\Number;

$number = new Number('2');

$number->isBigger('3'); // false
$number->isBigger('2'); // true
$number->isBigger('1'); // true

Development

To run unit tests go into project folder and type in the console

vendor/bin/phpunit

Package contains docker container capable of running tests

docker compose run php vendor/bin/phpunit

统计信息

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

GitHub 信息

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

其他信息

  • 授权协议: MIT
  • 更新时间: 2023-02-09

承接程序开发

PHP开发

VUE

Vue开发

前端开发

小程序开发

公众号开发

系统定制

数据库设计

云部署

网站建设

安全加固