lamansky/fraction 问题修复 & 功能扩展

解决BUG、新增功能、兼容多环境部署,快速响应你的开发需求

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

lamansky/fraction

Composer 安装命令:

composer require lamansky/fraction

包简介

A class that represents a fraction. Supports conversion to/from floats, mathematical operations, negative fractions, and Unicode stringification.

README 文档

README

A PHP class that represents a fraction. Converts to/from floats (0.25 ↔ ¼), simplifies fractions (⁴⁄₈ → ½), handles mathematical operations (½ + ⅓), supports negative fractions (−⅘), and does Unicode string output. Requires PHP 7.1 or above.

Installation

With Composer installed on your computer and initialized for your project, run this command in your project’s root directory:

composer require lamansky/fraction

Requires PHP 7.1 or above.

API

The library consists of a single class: Lamansky\Fraction\Fraction.

Constructor Parameters

  1. $a (int or float): The numerator of the fraction (the number on top).
  2. $b (int or float): The denominator of the fraction (the number on bottom).
  3. Optional: $negative (bool or int): If set to true or -1 (or any negative number), the fraction will be negative. If set to false or 1 (or any positive number), the fraction will be positive. If omitted, the fraction will be negative only if $a or $b is negative (but not both). If provided, the value of $negative will override whatever sign values $a or $b may have.

Static Method: fromFloat () : Fraction

Accepts one parameter (a float number) and returns a Fraction. The Fraction will have the same sign value (positive/negative) as the float.

isNegative () : bool

No parameters. Returns true if the fraction is negative; otherwise false.

getSignMultiplier () : int

No parameters. Returns -1 if the fraction is negative, or 1 if it is positive.

getNumerator () : int

No parameters. Returns the numerator of the fraction (the number on top).

getMixedInteger () : int

No parameters. Returns the integer component of a mixed fraction. A mixed fraction is one which is simplified to use a whole number (e.g. ⁵⁄₄ → 1¼). Example:

$f = new Fraction(7, 2);
echo $f->toString(); // 3 1/2
echo $f->getMixedInteger(); // 3
echo $f->getMixedNumerator(); // 1
echo $f->getDenominator(); // 2

If the fraction is not mixed (i.e. if the numerator is smaller than the denominator), this function will return 0.

getMixedNumerator () : int

No parameters. Returns the numerator of a mixed fraction. A mixed fraction is one which is simplified to use a whole number (e.g. ⁵⁄₄ → 1¼). Example:

$f = new Fraction(5, 4);
echo $f->getNumerator(); // 5
echo $f->getMixedNumerator(); // 1

If the fraction is not mixed (i.e. if the numerator is smaller than the denominator), this function will return the normal numerator.

getDenominator () : int

No parameters. Returns the denominator of the fraction (the number on bottom).

getParts () : array

No parameters. Returns an array with two elements: the numerator and the denominator.

getMixedParts () : array

No parameters. Returns an array with three elements: the mixed-fraction integer, the mixed-fraction numerator, and the denominator. For example: for the fraction 2¼, it would return [2, 1, 4].

toString () : string

No parameters. Returns an ASCII string representation of the fraction.

$f = new Fraction(-5, 4);
echo $f->toString(); // '-1 1/4'

toUnicodeString () : string

No parameters. Returns a Unicode string representation of the fraction.

$f = new Fraction(-5, 4);
echo $f->toUnicodeString(); // '−1¼'

toFloat () : float

No parameters. Divides the numerator by the denominator and returns a floating-point number.

$f = new Fraction(-5, 4);
echo $f->toFloat(); // -1.25

clone () : Fraction

No parameters. Returns a Fraction with the same numerator, denominator, and positive/negative sign.

absolute () : Fraction

No parameters. Clones the Fraction, but makes it positive if it’s negative.

add (Fraction $other) : Fraction

Returns a Fraction that is the sum of the current fraction and $other.

Note that if $other is a negative fraction, this will end up being subtraction (just like in math).

subtract (Fraction $other) : Fraction

Subtracts $other from the current fraction and returns the result.

multiply (Fraction $other) : Fraction

Multiplies the current fraction by $other and returns the result.

divide (Fraction $other) : Fraction

Divides the current fraction by $other and returns the result.

Unit Tests

To run the development test suite, execute this command:

./vendor/phpunit/phpunit/phpunit tests

统计信息

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

GitHub 信息

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

其他信息

  • 授权协议: MIT
  • 更新时间: 2018-06-08

承接程序开发

PHP开发

VUE

Vue开发

前端开发

小程序开发

公众号开发

系统定制

数据库设计

云部署

网站建设

安全加固