Buscar varios Strings dentro de un string

Por ejemplo saber si en un campo de texto han introducido una url (http, www, etc.), esto es útil para evitar robots que nos envían url automaticamente.

En este ejemplo primero se crea una matriz con los string que queremos buscar:

function patron_msg() {

   $_msg[] = "href";
   $_msg[] = "http";
   $_msg[] = "www";
   $_patron = "";
   // Se reemplaza en el patron el espacio en blanco por el caracter \040 y se separa con |
   foreach ($_msg as $_msg_item)
   {
       $_patron.= str_replace(" ","\040",$_msg_item)."|";
   }
   $_patron = substr($_patron,0, -1);
   return $_patron;

}

Ahora se comprueba si en el string está algunos de los string que hemos determinado en la función anterior:

   $_str = "http://www.miweb.com";
   $_patron = patron_msg();
   //Buscar varios string en un string
   if (preg_match("/$_patron_err/i", $_str))
   {
       echo "Encontrado";
   }

El parámetro /i hace que n se tengan en cuenta las diferencias entre mayúsculas y minúculas es decir, si pone HTTP lo encuentra por http.

Deja un comentario

Tu dirección de correo electrónico no será publicada. Los campos obligatorios están marcados con *

Uso de cookies

Este sitio web utiliza cookies para que usted tenga la mejor experiencia de usuario. Si continúa navegando está dando su consentimiento para la aceptación de las mencionadas cookies y la aceptación de nuestra política de cookies, pinche el enlace para mayor información.plugin cookies

ACEPTAR
Aviso de cookies