Ir para conteúdo

Arquivado

Este tópico foi arquivado e está fechado para novas respostas.

Danilo - Jesus voltará!

Tirar formato moeda e dividir depois em php

Recommended Posts

Olá, pessoal estou quebrando a cabeça aqui mas não consegui resolver ainda preciso de duas coisas...

 

1º: Tenho um produto com valor moeda de ex: R$ 25.000,00 e vai ser vendido por R$ 22.000,00

 

2º: Preciso saber como saber para subtrair e daí saber a porcentagem que os R$ 3.000,00 é de desconto, na calculadora é fácil mas no php sei que é falta de alguma coisa minha mas não consegui fazer ainda, pois fica dando erro de divisão por 0.

 

Isso vai ser para vários produtos com valores diferentes, mas a lógica será a mesma.

 

se alguém puder ajudar eu agradeço.

 

 

Compartilhar este post


Link para o post
Compartilhar em outros sites
$valor_normal = 25000;
$valor_venda = 22000;
$desconto = $valor_normal - $valor_venda;
if ($desconto > 0) {
    $dec_desconto = $desconto / $valor_normal;
    $perc_desconto = round($dec_desconto * 100);
}

Só lembro que o PHP vai tratar valores numéricos sem ponto separador de milhar e com "." (ponto) como separador de decimais

Compartilhar este post


Link para o post
Compartilhar em outros sites

Aqui está, regra de 3.

<?php
$v1 = 100; //100% preço inteiro
$v2 = "25000"; // Preço
$v3 = ""; // Porcentagem a ser descoberta
$v4 = "22000"; // Depois do desconto

$c1 = $v1*$v4;
$c2 = $v2;
$total = $c1/$c2;
$resultado = 100 - $total;
echo $resultado; // Ele retorna 12, que é a porcentagem do desconto.
?>

Compartilhar este post


Link para o post
Compartilhar em outros sites

 

Aqui está, regra de 3.

<?php
$v1 = 100; //100% preço inteiro
$v2 = "25000"; // Preço
$v3 = ""; // Porcentagem a ser descoberta
$v4 = "22000"; // Depois do desconto

$c1 = $v1*$v4;
$c2 = $v2;
$total = $c1/$c2;
$resultado = 100 - $total;
echo $resultado; // Ele retorna 12, que é a porcentagem do desconto.
?>

 

Wesley seu código deu certo, porém o meu problema então é estar pegando o valor que vem do banco já como moeda...

 

ele está assim R$ 25.000,00

preciso transformar ele para fazer a divisão e isso está me complicando...

com str_replace tentei mas não consegui, estou fazendo assim

 

str_replace(',', '.', str_replace('.', '', $product['price']));

 

estou tentando no opencart, não sei como pegar esta variavel direto sem estar em moeda.

 

aguardo e obrigado a todos por enquanto

Compartilhar este post


Link para o post
Compartilhar em outros sites
$valor_normal = 25000;
$valor_venda = 22000;
$desconto = $valor_normal - $valor_venda;
if ($desconto > 0) {
    $dec_desconto = $desconto / $valor_normal;
    $perc_desconto = round($dec_desconto * 100);
}

Só lembro que o PHP vai tratar valores numéricos sem ponto separador de milhar e com "." (ponto) como separador de decimais

 

 

Massaki

 

Valeu amigo, deu certo peguei o seu código daí tratei tirando com str_replace os caracteres extras e bingo...funfou o negócio...

 

obrigado a todos aí pela ajuda...

 

abraço

Compartilhar este post


Link para o post
Compartilhar em outros sites

×

Informação importante

Ao usar o fórum, você concorda com nossos Termos e condições.