/** * @param string $str * @return boolean */ protected function isUrl($str) { $str = KCurlWrapper::encodeUrl($str); $strRegex = "^(?P<protocol>(https?)|(ftp)|(sftp)|(scp)):\\/\\/?" . "(?P<credentials>([ 0-9a-zA-Z_!~*'().&=+\$%-\\[\\]]+:)?[ 0-9a-zA-Z_!~*'().&=+\$%-\\[\\]]+@)?" . "(?P<domain>([0-9]{1,3}\\.){3}[0-9]{1,3}" . "|" . "(?P<tertiary_domain>[0-9a-zA-Z_!~*'()-]+[.])*" . "(?P<second_level_domain>([0-9a-zA-Z][0-9a-zA-Z-]{0,61})?[0-9a-zA-Z])\\." . "(?P<first_level_domain>[a-zA-Z]{2,6}))" . "([.](?P<additional_level_domain>[a-zA-Z]{2,6}))*" . "(?P<port>:[0-9]{1,4})?" . "(?P<path>(\\/?)|" . "(\\/[ 0-9a-zA-Z_!~*'().;?:@&=+\$,%#-\\[\\]]+)+)\$"; return preg_match("/{$strRegex}/i", $str); }
/** * @param string $str * @return boolean */ protected function isUrl($str) { $str = KCurlWrapper::encodeUrl($str); $redundant_url_chars = array("_"); $str = str_replace($redundant_url_chars, "", $str); return filter_var($str, FILTER_VALIDATE_URL); }
/** * @param string $str * @return boolean */ private function isUrl($str) { KalturaLog::debug("isUrl({$str})"); $str = KCurlWrapper::encodeUrl($str); $strRegex = "^((https?)|(ftp)):\\/\\/" . "?(([0-9a-z_!~*'().&=+\$%-]+:)?[0-9a-z_!~*'().&=+\$%-]+@)?" . "(([0-9]{1,3}\\.){3}[0-9]{1,3}" . "|" . "([0-9a-z_!~*'()-]+\\.)*" . "([0-9a-z][0-9a-z-]{0,61})?[0-9a-z]\\." . "[a-z]{2,6})" . "(:[0-9]{1,4})?" . "((\\/?)|" . "(\\/[0-9a-z_!~*'().;?:@&=+\$,%#-]+)+)\$"; return preg_match("/{$strRegex}/i", $str); }