phonenumbervalidator Realiza a validação de números telefônicos brasileiros através do uso de expressões regulares.

Validador de números telefônicos brasileiros para Yii 1.x ¶

  1. Requisitos
  2. Uso
  3. Créditos
  4. Versões
  5. Contatos

Esta extensão é um validador de números telefônicos brasileiros através da utilização de expressões regulares. Podem ser validados somente números móveis (celulares) ou qualquer outro tipo de número telefônico, desde que o mesmo contenha o respectivo DDD.

A extensão pode ainda validar números com ou sem máscara, sendo que caso contenha máscara, a mesma deve seguir o padrão: (99) 9999-9999 ou (99) 99999-9999, caso o telefone seja móvel e contenha o nono dígito.

A extensão já está preparada para validação de números de telefone móvel que contenha o nono dígito para os seguintes DDDs: 11, 12, 13, 14, 15, 16, 17, 18, 19, 21, 22, 24, 27 e 28.

Requisitos ¶

Esta extensão requer a versão 1.1 ou superior do Yii.

Testes foram realizados somente na versão 1.1.x.

Uso ¶

Copie o arquivo IWPhoneNumberValidator.php para o diretório

protected/extensions/validators/

No método rules() da sua classe de modelo, você deve incluir a chamada da extensão, da seguinte maneira:

public function rules()
{
  return array(
    ....,
    array('telefone', 'ext.IWPhoneNumberValidator'),
    ....,
    );
}

Por padrão a extensão valida qualquer número de telefone, caso queira validar somente números de telefones móveis (celulares), adicione o seguinte parâmetro.

public function rules()
{
  return array(
    ....,
    array('telefone', 'ext.IWPhoneNumberValidator', 'onlyMobileNumbers' => TRUE),
    ....,
    );
}

Por padrão a extensão aceita campos vazios ou nulos como verdadeiros, caso deseje remover esta aceitação, adicione o seguinte parâmetro:

public function rules()
{
  return array(
    ....,
    array('telefone', 'ext.IWPhoneNumberValidator', 'allowEmpty' => FALSE),
    ....,
    );
}

A extensão por padrão, também valida números de telefone sem máscaras, caso queira considerar a máscara na validação do número, adicione o seguinte parâmetro:

public function rules()
{
  return array(
    ....,
    array('telefone', 'ext.IWPhoneNumberValidator', 'validateWithMask' => TRUE),
    ....,
    );
}

Vale lembrar que o padrão de máscara aceito é: (99) 9999-9999 ou (99) 99999-9999 quando o número for de um telefone móvel com o nono dígito. Caso deseje alterar a expressão regular de validação da máscara, altere os atributos phoneWithMaskPattern e mobilePhoneWithMaskPattern.

Por último a mensagem exibida ao usuário pode ser customizada através da adição do parâmetro customMessage, da seguinte maneira.

public function rules()
{
  return array(
    ....,
    array('telefone', 'ext.IWPhoneNumberValidator', 'onlyMobileNumbers' => TRUE, 'customMessage' => 'O campo "{attribute}" não é um número de celular válido.'),
    ....,
    );
}

Créditos ¶

Os créditos pelas expressões regulares são do Fausto Gonçalves Cintra. Maiores informações no endereço: http://goncin.wordpress.com/2010/08/30/validando-numeros-de-telefone-com-expressoes-regulares/

Versões ¶

28/10/2011 - 1.0 - Versão inicial do validador.

04/03/2014 - 1.1 - Inclusão de validação de nono dígito.

Contatos ¶

Ivan Wilhelm

E-mail: ivan.whm@me.com

Twitter: @ivanwhm

Skype: ivan.whm

Outros projetos: https://github.com/ivanwhm

2 0
3 followers
494 downloads
Yii Version: 1.1
License: Apache-2.0
Category: Validation
Tags: validator
Developed by: Ivan Wilhelm Ivan Wilhelm
Created on: Oct 28, 2011
Last updated: 11 years ago

Downloads

show all

Related Extensions