Ir para conteúdo

Pesquisar na Comunidade

Mostrando resultados para as tags ''preg_replace''.

  • Pesquisar por Tags

    Digite tags separadas por vírgulas
  • Pesquisar por Autor

Tipo de Conteúdo


Todas as áreas do Fórum

  • Q&A Desenvolvimento
    • Perguntas e respostas rápidas
  • Desenvolvimento Web
    • Desenvolvimento frontend
    • Javascript
    • PHP
    • Ruby
    • Python
    • Java
    • .NET
    • Docker, Kubernets e outros ambientes
    • Desenvolvimento com Wordpress
    • Desenvolvimento de apps
    • Desenvolvimento ágil
    • Desenvolvimento de Games
    • Banco de Dados
    • Design e UX
    • Algoritmos & Outras Tecnologias
  • Entretenimento e uso pessoal
    • Segurança & Malwares
    • Geral
    • Boteco iMasters

Encontrar resultados em...

Encontrar resultados que...


Data de Criação

  • Início

    FIM


Data de Atualização

  • Início

    FIM


Filtrar pelo número de...

Data de Registro

  • Início

    FIM


Grupo


Google+


Hangouts


Skype


Twitter


deviantART


Github


Flickr


LinkedIn


Pinterest


Facebook


Site Pessoal


Localização


Interesses

Encontrado 1 registro

  1. Guilherme Luiz

    Verificar se item (link) está autorizado a ser utilizado

    Olá pessoal! Tenho uma situação onde preciso adicionar um FLAG se o usuário estiver incluindo um link em sua mensagem para que eu possa filtra-la ou não. Se estiver incluindo um link, preciso checar se esse link está autorizado. Se sim, adiciono um FLAG false, se não, true. Com links absolutos, isso é simples de ser feito e já tenho feito: <?php $regex = "(((https?|ftp):\/\/)?(bit)?([a-z0-9+!*(),;?&=.-]+(:[a-z0-9+!*(),;?&=.-]+)?@)?([a-z0-9\-\.]*)\.(([a-z]{2,4})|([0-9]{1,3}\.([0-9]{1,3})\.([0-9]{1,3})))(:[0-9]{2,5})?(\/([a-z0-9+%-]\.?)+)*\/?(\?[a-z+&$_.-][a-z0-9;:@&%=+/.-]*)?(#[a-z_.-][a-z0-9+$%_.-]*)?)"; $linksAutorizados = ['bit.ly/123']; $mensagem = [ 'usuario' => 'teste', 'texto' => 'seja bem vindo ao meu site bit.ly/123' ]; $temLink = preg_match ($regex, $mensagem['texto'], $links); /** * $links retorna o seguinte array * 0: "bit.ly/123" * 3: "bit" * 7: "ly" * 8: "ly" * 13: "/123" * 14: "3" */ if ($temLink) { /* * Checo se link da mensagem é igual ao link da lista de linksAutorizados. * Se o link da mensagem for igual ao link da lista a mensagem não precisa ser filtrada * Se o link da mensagem for diferente ao link da lista, a mensagem precisa ser filtrada */ if ($links[0] == $linksAutorizados[0]) { $mensagem += [ 'filtrar' => false ]; } else { $mensagem += [ 'filtrar' => true ]; } } else { /* * Se não encontrar link na mensagem, ela não precisa ser filtrada */ $mensagem += [ 'filtrar' => false ]; } Obs: O acesso aos arrays foi em hardcoded para uma exemplificação mais clara. O meu problema é: E se eu quiser liberar links variáveis, ou seja, não importa o subdomínio ou demais parâmetros de querystring, checar somente o dominio Por exemplo *.meusite.com.br meusite.com.br/* subdominio.meusite.com.br/* Exemplo de array com links (que podem ser variaveis) autorizados para o usuario: $linksAutorizados = ['bit.ly/123', 'goo.gl/*', 'meusite.com.br/*' ]; Onde estão os asteriscos seriam os pontos que eu ignoro da verificação para filtro. Passei o dia fazendo alguns testes e pesquisando material no Stack mas não encontrei nada. Desde já muito obrigado por qualquer luz =)
×

Informação importante

Ao usar o fórum, você concorda com nossos Termos e condições.