Usamos cookies para medir audiência e melhorar sua experiência. Você pode aceitar ou recusar a qualquer momento. Veja sobre o iMasters.
Olá, implementei um sistema de cielo na loja ecwid, esta tudo ok, mas no final, quando tenho que confirmar o status na loja, eu preciso passar o valor da compra, acontece que o unico lugar que consigo recuperar este valor é da cielo mesmo, mas ele vem assim, para R$ 1,00 eu recebo esse valor 100
preciso transformar um valor sem os pontos no final, tipo 100 para 1.00
lembrando que pode ser qualquer valor, e os centavos, sempre estarao com duas casas, ex.
4500 para 45.00
15069 para 150.69
e assim por diante.
valeu
Divide por 100, formata com number_format e pronto.
Complementando a resposta do ESerra:
Você pode, como ele disse, dividir o número recebido por 100 e utilizar uma dessas duas abordagens:
1. Utilizar a função number_format().
echo number_format($numero, 2, ',', '.');
Onde $numero é a variável contendo o valor, 2 é o número de casas decimais, , é o separador de decimais e . é o separador de milhares.
2. Utilizar a função printf()/sprintf():
echo sprintf("%2.2f", $numero);
Onde %2.2.f é a formatação a ser usada (f de float e 2.2 para duas casas antes e duas depois do ponto) e $numero é o valor propriamente dito.
Abraço!
Você pode usar a função substr:
var_dump($valor); // saída: float 1 var_dump($valor); // saída: float 1.99