Trabalhei em um projeto aonde alguns dados estavam no banco sem mascara, por exemplo o telefone. No banco estava 1212341234, perguntei porque não colocar no banco com mascara e me responderam que era para economizar espaço, nisso comentei que disco hoje em dia está tão barato e se seria vantagem fazer isso mesmo a resposta que eu obtive foi que o problema não era o espaço em si, mas o trafego de rede.

Resposta:

Nao me convenceu 100%, mas tive que fazer uma função básica de criar mascaras e estou disponibilizando ela aqui.

PHP:

public static function mascara($mascara,$palavra){  
    $pont_palavra = 0;  
    $resultado = "";  
    if( strlen(trim($palavra)) > 0 )  
        for($i = 0; $i < strlen($mascara); $i++){  
            $mascara_char = substr($mascara,$i,1);  
            if ($mascara_char == '#'){  
                $resultado .= substr($palavra,$pont_palavra,1);  
                        $pont_palavra++;  
            }else{  
                $resultado .= $mascara_char;  
            }  
        }  
    return $resultado;  
}


mascara(”(##) ####-####”,”1212341234″); // (12) 1234-1234

Post corrigido: Valeu pela observação ZetaOne

Tags: php

Endereço de trackback para este post

Trackback URL (clique direito e copie atalho/localização do link)

2 comentários

Comentário de: ZetaOne [Visitante]
Fera o blog....

Na linha 4 não seria, if( strlen(trim($palavra)) > 0 )


Faloras
07.10.08 @ 05:03
Comentário de: Yuri [Visitante]
Excelente Code Snippet!Testei e funciona 100%.

Obrigado por disponibilizar

Abraços
04.03.09 @ 10:46

Deixe seu comentário


Seu endereço de e-mail não será revelado nesse site.

Sua URL será exibida.
(Quebras de linha se tornam <br />)
(Nome, e-mail & website)
(Permitir que usuários o contatem através de um formulário eletrônico (seu e-mail não será exibido.))