【问题标题】:regex URL cut question mark [duplicate]正则表达式 URL 剪切问号 [重复]
【发布时间】:2012-10-16 15:28:10
【问题描述】:

可能重复:
Parsing Domain From URL In PHP
How do I parse a URL in PHP?

我有这个代码:

$url = preg_replace("/^(http:\/\/)*(www.)*/is", "", $url);
    $url = preg_replace("/\/.*$/is" , "" ,$url);

在 .com 之后是 / 的位置获取域名效果很好。如果有这样的网址,我会遇到问题:

http://www.something.com?id=21213

我需要在正则表达式中添加什么来剪切 ?id=21213 所以只剩下 something.com

【问题讨论】:

  • 您到底需要什么?给定一个网址 www.something.com/?id=123 你想要它的哪一部分?
  • -1:懒得看说明书。
  • GarethL - cut ?id=21213 所以只剩下 something.com hakre- parse_url() 不是选项。

标签: php regex


【解决方案1】:

查看parse_url() 的神奇内置函数。

使用parse_url(),您可以单独通过以下方式检索域名:

$domain = parse_url($url, PHP_URL_HOST);
if(0 === strpos('www.', $domain)){
    $domain = substr($domain, 4);
}

【讨论】:

  • 如果我用这个还有 www 部分。我只需要 domain.com。
  • 更新代码以删除www.
猜你喜欢
  • 2019-05-29
  • 1970-01-01
  • 2012-07-16
  • 2015-01-14
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 2018-06-04
  • 1970-01-01
相关资源
最近更新 更多