为了账号安全,请及时绑定邮箱和手机立即绑定

如果URL中不存在http://如何?

如果URL中不存在http://如何?

开满天机 2019-08-06 16:43:55
如果URL中不存在http://如何?http://如果URL尚未包含协议(例如http://,https://或ftp://),我该如何添加?例:addhttp("google.com"); // http://google.comaddhttp("www.google.com"); // http://www.google.comaddhttp("google.com"); // http://google.comaddhttp("ftp://google.com"); // ftp://google.comaddhttp("https://google.com"); // https://google.comaddhttp("http://google.com"); // http://google.comaddhttp("rubbish"); // http://rubbish
查看完整描述

3 回答

?
LEATH

TA贡献1936条经验 获得超6个赞

@nickf代码的修改版本:

function addhttp($url) {
    if (!preg_match("~^(?:f|ht)tps?://~i", $url)) {
        $url = "http://" . $url;
    }
    return $url;}

认识到ftp://ftps://http://https://在不区分大小写的方式。


查看完整回答
反对 回复 2019-08-06
?
慕无忌1623718

TA贡献1744条经验 获得超4个赞

只需检查是否有协议(由“://”描述)并添加“http://”(如果没有)。

if (false === strpos($url, '://')) {
    $url = 'http://' . $url;}

注意:这可能是一个简单而直接的解决方案,但Jack使用的答案parse_url几乎同样简单且更加健壮。你应该使用那个。


查看完整回答
反对 回复 2019-08-06
  • 3 回答
  • 0 关注
  • 1210 浏览

添加回答

举报

0/150
提交
取消
意见反馈 帮助中心 APP下载
官方微信