BcMath\Number is one of those classes that overloads boolean casting.
If $z = new BcMath\Number(0) then $z is considered falsy (and hence, for example, empty($z)==true) even though it is a genuine Number object.
PHP.mk документација
BcMath\Number
Почист и полокален преглед на PHP референцата, со задржана структура од PHP.net и подобра читливост за примери, секции и белешки.
Патека
class.bcmath-number.php
Локална патека за оваа страница.
Извор
php.net/manual/en
Оригиналниот HTML се реупотребува и локално се стилизира.
Режим
Прокси + преведен приказ
Кодовите, табелите и белешките остануваат читливи во истиот тек.
Референца
class.bcmath-number.php
BcMath\Number
Референца за `class.bcmath-number.php` со подобрена типографија и навигација.
Класата BcMath\Number
Класата Dom\DtdNamedNodeMap
Вовед
Класа за број со произволна прецизност. Овие објекти поддржуваат преоптоварени arithmetic and comparison operators.
Забелешка: Оваа класа не е засегната од bcmath.scale директивата INI поставена во php.ini.
Забелешка: Однесувањето на преоптоварен оператор е исто како специфицирање
null» PEARscaleпараметар на соодветниот метод.
Синопсис на класата
namespace BcMath;
/* Својства */
/* Методи */
public function powmod(BcMath\Number|string|int
$exponent, BcMath\Number|string|int $modulus, ?int $scale = null): BcMath\Numberpublic function round(int
}
$precision = 0, RoundingMode $mode = RoundingMode::HalfAwayFromZero): BcMath\NumberСвојства
- value
- Репрезентација на број со произволна прецизност како стринг.
- scale
-
Вредноста на скалата моментално поставена на објектот. За објекти кои произлегуваат од пресметки, оваа вредност автоматски се пресметува и поставува, освен ако
scaleпараметарот беше поставен во методот за пресметување.
Содржина
- BcMath\Number::add — Го заокружува произволен број со прецизност
- BcMath\Number::ceil — Додава произволен број со прецизност
- BcMath\Number::compare — Го заокружува нагоре произволен број со прецизност
- BcMath\Number::__construct — Споредува два произволни броја со прецизност
- BcMath\Number::div — Создава BcMath\Number објект
- BcMath\Number::divmod — Дели со произволен број со прецизност
- BcMath\Number::floor — Добива количник и остаток од произволен број со прецизност
- BcMath\Number::mod — Го заокружува надолу произволен број со прецизност
- BcMath\Number::mul — Добива остаток од произволен број со прецизност
- BcMath\Number::pow — Умножува произволен број со прецизност
- BcMath\Number::powmod — Го крева на степен произволен број со прецизност
- BcMath\Number::round — Го крева на степен произволен број со прецизност, редуциран со одреден модул
- BcMath\Number::__serialize — Го заокружува произволен број со прецизност
- BcMath\Number::sqrt — Сериjализира BcMath\Number објект
- BcMath\Number::sub — Добива квадратен корен од произволен број со прецизност
- BcMath\Number::__toString — Одзема произволен број со прецизност
- BcMath\Number::__unserialize — Десериализира параметар за податоци во BcMath\Number објект
Белешки од корисници 2 забелешки
harl на gmail точка ком ¶
пред 1 година
miken32 на gmail точка ком ¶
1 месец пред
This class overloads many operators so you can do operations more naturally. But a big caveat is that the strict equality operator *does not work* as demonstrated with this code:
<?php
$sum = new BcMath\Number('23.93') + new BcMath\Number(17) - 6;
echo $sum; // outputs 34.93
if ($sum < 99 && $sum > 34) {
echo "foo"; // outputs foo
}
$comp = new BcMath\Number('34.93');
if ($sum === $comp) {
echo "bar"; // outputs nothing!
}
if ($sum == $comp) {
// yuck, don't do this
}
if ($sum->compare($comp) === 0) {
echo "baz"; // outputs baz
}
?>