Ir para conteúdo
Fórum Script Brasil
  • 0

A função subtração bcsub( ) do PHP


Frank K Hosaka

Pergunta

No fórum iMasters encontrei a função bcsub( ), ele é bem interessante, ele subtrai dois valores e ao mesmo tempo define o número de casas decimais do resultado, assim:

<?php
$despesa=2.1;
$receita=3;
echo $resultado=bcsub($despesa,$receita,2);
// -0.90

Eu fiquei imaginando que seria melhor se o PHP tivesse também a mesma ferramenta para as outras operações de aritmética. E ele tem, olha só:

<?php
$despesa=2.1;
$receita=3;
echo $resultado=bcsub($despesa,$receita,2)."<br>";
// -0.90
$preço=2.1;
$quantidade=3;
echo $resultado=bcmul($preço,$quantidade,2)."<br>";
// 6.30
echo $resultado=bcadd($preço,$quantidade,2)."<br>";
// 5.10
echo $resultado=bcdiv($preço,$quantidade,2);
// 0.70

Esse recurso é muito bacana, o chato é esse ponto decimal "." que aparece no resultado.

Perguntei para o Bard se é possível definir a vírgula como ponto flutuante no MySQL, e ele disse que sim. Aqui estão as dicas:

arquivo my.conf
[mysqld]
decimal_separator = ,

ou

linha de comando:
SET GLOBAL decimal_separator = ',';

Eu tenho pavor de mexer no ponto flutuante do MySQL, não faço a menor ideia de como o PHP vai pegar os registros.

O Bard disse que é possível definir o ponto flutuante do PHP, assim:

setlocale(LC_NUMERIC, "pt_BR");

Mas essa dica não funciona. O Bard está em fase beta. Esse é um bom motivo para não mexer no MySQL e se conformar com a função number_format( ) do PHP.

Link para o comentário
Compartilhar em outros sites

0 respostass a esta questão

Posts Recomendados

Até agora não há respostas para essa pergunta

Participe da discussão

Você pode postar agora e se registrar depois. Se você já tem uma conta, acesse agora para postar com sua conta.

Visitante
Responder esta pergunta...

×   Você colou conteúdo com formatação.   Remover formatação

  Apenas 75 emoticons são permitidos.

×   Seu link foi incorporado automaticamente.   Exibir como um link em vez disso

×   Seu conteúdo anterior foi restaurado.   Limpar Editor

×   Você não pode colar imagens diretamente. Carregar ou inserir imagens do URL.



  • Estatísticas dos Fóruns

    • Tópicos
      152,3k
    • Posts
      652,3k
×
×
  • Criar Novo...