PHP: função para pesquisa
Ae galerinha, to fazendo um sistema tipo tarifador de telefonia e to com o seguinte problema.
Tenho uma tabelinha com todos os prefixos de telefones no brasil (milhares), mas tem um porém (vide abaixo):
MATAO 1628 fixed
MATAO 163382 fixed
MATAO 163383 fixed
MATAO 163384 fixed
MATAO 163394 fixed
A cidade de Matão por exemplo pode ter os prefixos acima. Supondo que eu tenho o número 1633842489 e preciso identificá-lo como sendo de Matão. Qual a melhor forma de fazer essa comparação, uma vez que a quantidade de casas a comparar não é fixa ?
Re: PHP: função para pesquisa
perae, quer dizer que já tem lugar com telefone de DEZ digitos??? aqui em Brasília colocaram oito agora!!!. Olha, se é um lugar com um telefone de dez dígitos, checa pelo prefixo das cidades que tem mais digitos, caso tenha oito (como quase too o resto do mundo) checa com os números de prefixo com 4 digitos.
Re: PHP: função para pesquisa
Na verdade 10 dígitos com o DDD caro Evandro, por exemplo 11 4063 9656.
Eu fiz da seguinte forma, vim da direita para esquerda, comparando 1 a 1.
Peguei a variável nrtelefone = 1140639656, usei um substr e ela ficou em 114063.
Ae eu comparei essa variável com todo banco de dados e não encontrou nada.
Ae foi caindo em case (ou if) e cada vez fui subtraindo mais nrs.
Na segunda oportunidade ela ficou como 11406 e comparei novamente.
Se retornasse a cidade, tava resolvido. Caso contrário, retira mais um nr. e compara novamente.
Dessa forma eu resolvi o problema.
Se mais alguém tiver o problema pela frente, essa é uma das alternativas, se bem que não gostei da forma que eu mesmo fiz, ficou "feia".
Re: PHP: função para pesquisa
Pera ai!
Qual é o prefixo de matão?
16 28 (??? Existe isto? Pode haver situação de vc receber isto?)
16 3382
16 3383
16 3384
16 3394
e quais os outros?
Como é que vc recebe esta informação? Antes de utlizar o substr como é que vc a recebe?