<?
// DADOS DA DB
while ($dados = mysql_fetch_object($query)){
$valor[] = $dados->valor;
// DEMAIS DADOS SOLICITADOS + TABELA
}
echo 'Valor Total: R$ '.array_sum($valor);
?>
O Sistema Funciona com numeros positivos e negativos, mas ignora os decimais (Ex.: $valor = Array('100,10','-90,09'); ele deveria retornar 10,01; mas retorna 10.
Como posso corrigir?
Obrigado!
// Resolvi:
// Solução: Trocar a vírgula (,) por pontos ao passar o valor para array, ficando:
Pergunta
h-abreu
Olá tenho o seguinte script (simplificado :D)
<? // DADOS DA DB while ($dados = mysql_fetch_object($query)){ $valor[] = $dados->valor; // DEMAIS DADOS SOLICITADOS + TABELA } echo 'Valor Total: R$ '.array_sum($valor); ?>O Sistema Funciona com numeros positivos e negativos, mas ignora os decimais (Ex.: $valor = Array('100,10','-90,09'); ele deveria retornar 10,01; mas retorna 10. Como posso corrigir? Obrigado! // Resolvi: // Solução: Trocar a vírgula (,) por pontos ao passar o valor para array, ficando:<? // DADOS DA DB while ($dados = mysql_fetch_object($query)){ $valor[] = $dados->valor; // DEMAIS DADOS SOLICITADOS + TABELA } echo 'Valor Total: R$ '; $valor_t_p_d = explode('.',array_sum($valor)); $valor_t_p = array_sum($valor); $valor_t_v = $valor_t_p_d['0'].','.$valor_t_p_d['1']; if(empty($valor_t_p_d['1'])) { $valor_t_v = $valor_t_p_d['0'].',00'; } else { if(count($valor_t_p_d['1'] < '2')) { $valor_t_v = $valor_t_p_d['0'].','.$valor_t_p_d['1'].'0'; } } echo $valor_t_v;Obrigado pela atenção.
Editado por h-abreuLink para o comentário
Compartilhar em outros sites
0 respostass a esta questão
Posts Recomendados
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.