Formatação de preço

Publicado por Andre Cardoso (última atualização em 10/11/2012)

[ Hits: 4.655 ]

Homepage: http://www.andrebian.com

Download formataPreco.php




Este script tem por finalidade facilitar a formatação de preços. Trata somente centavos e milhares. Ex.: 111.000,50, caso seja formatado um valor em milhões o mesmo aparecerá desta forma: 1111.234,56

  



Esconder código-fonte

/**
 * @desc Utilizado para remover campos em excesso do preço
 * @param String $precoRecebido
 * @return String Preço formatado
 */
   function formataPreco($precoRecebido) {
      $precoExplode = explode('.',$precoRecebido);
      $reais = $precoExplode[0];
      $centavos = $precoExplode[1];
      
      if ( strlen( $reais ) > 3 ) {
         $quantidadeCasas = strlen($reais) - 3;
         $reais = substr($reais,0,$quantidadeCasas).'.'.substr($reais,$quantidadeCasas,3);
      } 
      if ( strlen($centavos) == 1 ){
         $centavos .= '0';
      } else if ( strlen( $centavos ) == 0 ) {
         $centavos = '00';
      }
      
      $precoFormatado = $reais.','.$centavos;
      
      return $precoFormatado;
   }

Scripts recomendados

Script PHP simples que mostra IP e UserAgent do visitante, mesmo em alguns casos de proxy

Upload de arquivos com PHP

Cotação do dólar direto do banco central

IP do usuario (usando arquivo tb)

guarda num arquivo txt o host, ip, data e hora de acesso do visitante


  

Comentários
[1] Comentário enviado por nickmarinho em 10/11/2012 - 13:27h

Desculpe a minha intromissão, mas não seria mais fácil fazer isso com a função nativa do PHP chamada "number_format" ?

[2] Comentário enviado por andrebian em 10/11/2012 - 15:41h

Pode ser formatado sim pelo number_format no entanto aqui é um script alternativo, caso o usuário queira um maior controle. sem contar com com o number_format o usuário vai ter que passar o parametro para tal formatação ex: $preco = number_format($precoDesejado, 2, ',', ' '); sendo que com este script basta um echo formataPreco($precoDeseado) não é muito mais fácil nickmarinho??? bolei este script pensando em facilitar o uso.

[3] Comentário enviado por nickmarinho em 10/11/2012 - 22:57h

Não, tudo bem, é que já uso tanto o number_format e acho tão simples que não pensei dessa forma ... de qualquer maneira com certeza será útil... valeu a dica !! Abç

[4] Comentário enviado por andrebian em 15/11/2012 - 16:36h


[3] Comentário enviado por nickmarinho em 10/11/2012 - 22:57h:

Não, tudo bem, é que já uso tanto o number_format e acho tão simples que não pensei dessa forma ... de qualquer maneira com certeza será útil... valeu a dica !! Abç



tranquilo, o que vale é mostrar as diferentes formas de solucionar o mesmo problema, acho que toda opinião é válida, lógico que sendo útil, como a sua foi. Devo desconsiderar opinião de quem critica e não mostra uma alternativa à resolução, valeu pelo comentário...


Contribuir com comentário




Patrocínio

Site hospedado pelo provedor RedeHost.
Linux banner

Destaques

Artigos

Dicas

Tópicos

Top 10 do mês

Scripts