PHP – Validaciones – preg_match http, ftp
Función que comprueba la sintaxis de una url, si esta bien formada o tiene algún carácter no válido.
Puede contener o no el protocolo, detectando http, https y ftp.
/**
* Class HelperValidate
*/
abstract class HelperValidate
{
/**
* Comprueva la sintaxis de una url es correcta
* Puede contener o no el protocolo.
* Detecta el protocolo http, https y ftp
*
* @param $url
* @param bool $protocolo
*
* @return false|int
*/
public static function isUrl($url, $protocolo = false)
{
// Carácteres permitidos
$chars = '[a-z0-9\/:_\-_\.\?\$,;~=#&%\+]';
if ($protocolo) {
return preg_match("/^(http|https|ftp):\/\/" .
$chars .
"+$/i", $url );
} else {
return preg_match("/^".$chars."+$/i", $url );
}
}
}
