Realtype

class AeonDigital\Realtype
Permite operações matemáticas com números reais de qualquer precisão decimal.
Utiliza a extenção matemática BC Math.
Parent:AeonDigital\BObject
Used traits:AeonDigitalTraitsMainCheckArgumentException

Properties

Methods

public AeonDigital\Realtype::value()
Retorna o valor que esta instância está representando.
Returns:‹ string ›
public AeonDigital\Realtype::getIntegerPart()
Retorna apenas a parte inteira do numeral representado por esta instância.
Returns:‹ string ›
public AeonDigital\Realtype::getDecimalPart()
Retorna apenas a parte decimal do numeral representado por esta instância.
Returns:‹ string ›
public AeonDigital\Realtype::precision()
Retorna o total de dígitos que compõe este numeral somando o total de casas antes e após
o separador decimal.
Returns:‹ int ›
public AeonDigital\Realtype::integerPlaces()
Retorna o total de digitos que são usados para representar a parte inteira do numeral
atual.
Returns:‹ int ›
public AeonDigital\Realtype::decimalPlaces()
Retorna o total de digitos que são usados para representar a parte decimal do numeral
atual.
Returns:‹ int ›
public static AeonDigital\Realtype::defineGlobalDecimalPlaces($v)
Permite definir um valor padrão para o argumento $dPlaces usado em vários métodos
desta classe.
Quando algum método que usa o argumento $dPlaces for igual a null, o valor aqui
definido é que será usado.
Parameters:
  • ‹ int › $v
    Valor padrão a ser usado.
Returns:

‹ void ›

public static AeonDigital\Realtype::getGlobalDecimalPlaces()
Retorna o número de casas decimais sendo usadas no momento para fins de cálculos com esta
classe.
Returns:‹ int ›
public static AeonDigital\Realtype::defineGlobalRoundType($roundType, $sensibility)
Define a forma padrão pela qual os valores, quando calculados, serão arredondados.
Parameters:
  • ‹ string › $roundType
    Indica o tipo de arredondamento que será feito. Valores inválidos não incorrerão em erros e nem em nenhuma conversão.

    Os valores aceitos são: floor : Arredondará para baixo qualquer valor a partir do

    digito sensível.

    ceil : Arredondará para cima todo valor diferente de zero a partir

    do digito sensível.

    floor-n : Arredondará para baixo todo digito sensível que seja

    igual ou menor que n e para cima todo digito sensível maior que n.

    ceil-n : Arredondará para cima todo digito sensível que seja igual

    ou maior que n e para baixo todo digito sensível menor que n.

  • ‹ AeonDigital\Realtype › $sensibility
    A sensibilidade é sempre um valor que indica qual será exatamente o digito que será sensível ao arredondamento.

    Por exemplo: 0.001 fará o arredondamento do número a partir do 3º digito após o ponto decimal enquanto 10 fará o arredondamento das casas das dezenas.

Returns:

‹ void ›

public static AeonDigital\Realtype::getRoundType()
Retorna o tipo de arredondamento definido para os cálculos realizados com esta classe.
Returns:‹ ?string ›
public static AeonDigital\Realtype::getRoundSensibility()
Retorna o nível de sensibilidade usada para os arredondamentos.
Returns:‹ ?string ›
public AeonDigital\Realtype::__construct($v=0)
Inicia um novo objeto Realtype com o valor indicado.
Parameters:
  • ‹ mixed › $v
    É esperado valores Realtype, int, float ou uma string numérica.
Throws:

‹ InvalidArgumentException ›
Lançado se o valor inicial indicado não for aceitável para iniciar o objeto.

public static AeonDigital\Realtype::isValidRealtype($v)
Identifica se o valor passado é um Realtype válido.
Parameters:
  • ‹ mixed › $v
    É esperado valores Realtype, int, float ou uma string numérica.
Returns:

‹ bool ›
Retorna true se o valor passado for válido.

public AeonDigital\Realtype::isEqualAs($v)
Verifica se o valor atual desta instância é igual ao valor passado para comparação.
Parameters:
  • ‹ mixed › $v
    Valor usado para comparação. É esperado valores Realtype, int, float ou uma string numérica.
Returns:

‹ bool ›
Retorna true se o valor atual desta instância e o valor passado em $v forem IDÊNTICOS.

public AeonDigital\Realtype::isGreaterThan($v)
Verifica se o valor atual desta instância é maior que o valor passado para comparação.
Parameters:
  • ‹ mixed › $v
    Valor usado para comparação. É esperado valores Realtype, int, float ou uma string numérica.
Returns:

‹ bool ›
Retornará true se o valor atual desta instância é MAIOR que o valor indicado em $v.

public AeonDigital\Realtype::isGreaterOrEqualAs($v)
Verifica se o valor atual desta instância é maior ou igual ao valor passado para comparação.
Parameters:
  • ‹ mixed › $v
    Valor usado para comparação. É esperado valores Realtype, int, float ou uma string numérica.
Returns:

‹ bool ›
Retornará true se o valor atual desta instância é MAIOR ou IGUAL ao o valor indicado em $v.

public AeonDigital\Realtype::isLessThan($v)
Verifica se o valor atual desta instância é menor que o valor passado para comparação.
Parameters:
  • ‹ mixed › $v
    Valor usado para comparação. É esperado valores Realtype, int, float ou uma string numérica.
Returns:

‹ bool ›
Retornará true se o valor atual desta instância é MENOR que o valor indicado em $v.

public AeonDigital\Realtype::isLessOrEqualAs($v)
Verifica se o valor atual desta instância é menor ou igual ao valor passado para comparação.
Parameters:
  • ‹ mixed › $v
    Valor usado para comparação. É esperado valores Realtype, int, float ou uma string numérica.
Returns:

‹ bool ›
Retornará true se o valor atual desta instância é MENOR ou IGUAL ao o valor indicado em $v.

public AeonDigital\Realtype::isZero()
Verifica se o valor atual desta instância é zero.
Returns:‹ bool ›
Retornará true se o valor atual desta instância for zero.
public AeonDigital\Realtype::isPositive()
Verifica se o valor atual desta instância é um número positivo.
Returns:‹ bool ›
Retornará true se o valor atual desta instância for um número positivo.
public AeonDigital\Realtype::isNegative()
Verifica se o valor atual desta instância é um número negativo.
Returns:‹ bool ›
Retornará true se o valor atual desta instância for um número negativo.
public AeonDigital\Realtype::toPositive()
Retorna uma nova instância Realtype com o mesmo valor atual desta instância mas com
o sinal positivo.
Returns:‹ \AeonDigital\Realtype ›
public AeonDigital\Realtype::toNegative()
Retorna uma nova instância Realtype com o mesmo valor atual desta instância mas com
o sinal negativo.
Returns:‹ \AeonDigital\Realtype ›
public AeonDigital\Realtype::invertSignal()
Retorna uma nova instância Realtype com o mesmo valor atual desta instância mas com
o sinal invertido.
Returns:‹ \AeonDigital\Realtype ›
public static AeonDigital\Realtype::roundTo($v, $roundType, $sensibility)
Efetua o arredondamento de valores conforme as regras indicadas.
Parameters:
  • ‹ AeonDigital\Realtype › $v
    Valor que será arredondado.

  • ‹ string › $roundType
    Indica o tipo de arredondamento que será feito. Valores inválidos não incorrerão em erros e nem em nenhuma conversão.

    Os valores aceitos são: floor : Arredondará para baixo qualquer valor a partir do

    digito sensível.

    ceil : Arredondará para cima todo valor diferente de zero a partir

    do digito sensível.

    floor-n : Arredondará para baixo todo digito sensível que seja

    igual ou menor que n e para cima todo digito sensível maior que n.

    ceil-n : Arredondará para cima todo digito sensível que seja igual

    ou maior que n e para baixo todo digito sensível menor que n.

  • ‹ AeonDigital\Realtype › $sensibility
    A sensibilidade é sempre um valor que indica qual será exatamente o digito que será sensível ao arredondamento.

    Por exemplo: 0.001 fará o arredondamento do número a partir do 3º digito após o ponto decimal enquanto 10 fará o arredondamento das casas das dezenas.

Returns:

‹ \AeonDigital\Realtype ›
Nova instância Realtype com o resultado do arredondamento indicado.

public AeonDigital\Realtype::sum($v, $dPlaces=null)
Efetua uma adição do valor atual desta instância com o valor indicado.
Parameters:
  • ‹ mixed › $v
    Valor usado para o cálculo. É esperado valores Realtype, int, float ou uma string numérica.
  • ‹ ?int › $dPlaces
    Total de casas decimais a serem levadas em conta. Se null for passado, usará o padrão definido em static::$globalDecimalPlaces.
Returns:

‹ \AeonDigital\Realtype ›
Nova instância com o resultado desta operação.

public AeonDigital\Realtype::sub($v, $dPlaces=null)
Efetua uma subtração do valor atual desta instância com o valor indicado.
Parameters:
  • ‹ mixed › $v
    Valor usado para o cálculo. É esperado valores Realtype, int, float ou uma string numérica.
  • ‹ ?int › $dPlaces
    Total de casas decimais a serem levadas em conta. Se null for passado, usará o padrão definido em static::$globalDecimalPlaces.
Returns:

‹ \AeonDigital\Realtype ›
Nova instância com o resultado desta operação.

public AeonDigital\Realtype::mul($v, $dPlaces=null)
Efetua uma multiplicação do valor atual desta instância com o valor indicado.
Parameters:
  • ‹ mixed › $v
    Valor usado para o cálculo. É esperado valores Realtype, int, float ou uma string numérica.
  • ‹ ?int › $dPlaces
    Total de casas decimais a serem levadas em conta. Se null for passado, usará o padrão definido em static::$globalDecimalPlaces.
Returns:

‹ \AeonDigital\Realtype ›
Nova instância com o resultado desta operação.

public AeonDigital\Realtype::div($v, $dPlaces=null)
Efetua uma divisão do valor atual desta instância com o valor indicado.
Parameters:
  • ‹ mixed › $v
    Valor usado para o cálculo. É esperado valores Realtype, int, float ou uma string numérica.
  • ‹ ?int › $dPlaces
    Total de casas decimais a serem levadas em conta. Se null for passado, usará o padrão definido em static::$globalDecimalPlaces.
Returns:

‹ \AeonDigital\Realtype ›
Nova instância com o resultado desta operação.

public AeonDigital\Realtype::mod($v, $dPlaces=null)
Calcula o módulo da divisão do valor atual desta instância pelo valor indicado.
Parameters:
  • ‹ mixed › $v
    Valor usado para o cálculo. É esperado valores Realtype, int, float ou uma string numérica.
  • ‹ ?int › $dPlaces
    Total de casas decimais a serem levadas em conta. Se null for passado, usará o padrão definido em static::$globalDecimalPlaces.
Returns:

‹ \AeonDigital\Realtype ›
Nova instância com o resultado desta operação.

public AeonDigital\Realtype::pow($v, $dPlaces=null)
Eleva o valor atual desta instância pelo expoente indicado.
Parameters:
  • ‹ mixed › $v
    Valor usado para o cálculo. É esperado valores Realtype, int, float ou uma string numérica.
  • ‹ ?int › $dPlaces
    Total de casas decimais a serem levadas em conta. Se null for passado, usará o padrão definido em static::$globalDecimalPlaces.
Returns:

‹ \AeonDigital\Realtype ›
Nova instância com o resultado desta operação.

public AeonDigital\Realtype::sqrt($dPlaces=null)
Calcula a raiz quadrada do valor atual desta instância.
Parameters:
  • ‹ ?int › $dPlaces
    Total de casas decimais a serem levadas em conta. Se null for passado, usará o padrão definido em static::$globalDecimalPlaces.
Returns:

‹ \AeonDigital\Realtype ›
Raiz quadrada do valor atual desta instância.

public AeonDigital\Realtype::__toString()
Configura a forma como uma instância deve se comportar quando forçada a ser convertida
para uma string.
Returns:‹ string ›
public static AeonDigital\Realtype::__set_state($state)
Permite definir um novo objeto baseado no estado completo passado pelo parametro $state.
Parameters:
  • ‹ array › $state
    Dados que serão adicionados ao novo objeto.
Returns:

‹ \AeonDigital\Realtype ›
Nova instância preenchida com os valores do estado indicado em $state.

public AeonDigital\Realtype::format($dPlaces=null, $dec, $tho)
Formata o valor atual desta instância usando o pontuador decimal e de milhar indicados.
Parameters:
  • ‹ ?int › $dPlaces
    Total de casas decimais a serem levadas em conta. Se null for passado, usará o padrão definido em static::$globalDecimalPlaces.
  • ‹ string › $dec
    Pontuador decimal a ser usado.
  • ‹ string › $tho
    Pontuador de milhar a ser usado.
Returns:

‹ string ›
Valor atual desta instância formatado conforme definido.