如何将http://
添加到一个尚未包含协议的URL中(例如:http://
、https://
或ftp://
)?
范例:
addhttp("google.com"); // http://google.com
addhttp("www.google.com"); // http://www.google.com
addhttp("google.com"); // http://google.com
addhttp("ftp://google.com"); // ftp://google.com
addhttp("https://google.com"); // https://google.com
addhttp("http://google.com"); // http://google.com
addhttp("rubbish"); // http://rubbish
8条答案
按热度按时间iq0todco1#
@nickf代码的修改版本:
识别
ftp://
,ftps://
,http://
和https://
,不区分大小写。cclgggtu2#
在撰写本文时,没有一个答案使用了内置函数:
标签:
parse_url()
wkyowqbh3#
只需检查是否有协议(用“://”表示),如果没有,则添加“http://”。
注意:这可能是一个简单直接的解决方案,但Jack使用
parse_url
的答案几乎同样简单,而且更健壮。你应该用那个。flmtquvp4#
最好的答案是这样的:
该协议灵活,所以同样的功能可以用ftp,https等。
7bsow1i65#
扫描字符串中的
://
。如果它没有它,则将http://
前置到字符串.所有其他的东西都使用字符串。这将工作,除非你有一个垃圾输入字符串。
6tr1vspr6#
试试这个。它不是防水的,但可能足够好:
1.也就是说,像“fttps://”这样的前缀被视为有效。
oyjwcjzk7#
nickf的解决方案修改:
djp7away8#
如果URL中没有 http://,则此代码会将其添加到URL中。