【问题标题】:How to keep only this specific part of url? [duplicate]如何只保留网址的这个特定部分? [复制]
【发布时间】:2015-02-20 13:35:16
【问题描述】:

http://www.example.com/hu/link

使用PHP我怎么只能保留hu?请注意link 只是一个变量,它可能是任何变量

【问题讨论】:

  • 这不清楚 - 你是在谈论解析 url 以提取路径段吗?还是某种重定向?
  • @Bulk 是的,将其解析为路径段。基本上我想回显hu.com/.../ 之间的任何其他@
  • 使用explode()/ 字符上拆分URL,然后取数组的倒数第二个元素。
  • @Xalloumokkelos 这可以帮助你:php.net/manual/en/function.parse-url.php

标签: php


【解决方案1】:

您可以使用explode

$exploded = explode('/', 'http://www.example.com/hu/link');
$value = $exploded[3];

【讨论】:

    【解决方案2】:

    一个解决方案是这样的:

    $split = explode("/", $_SERVER["REQUEST_URI"]);
    echo $split[1];
    

    【讨论】:

      【解决方案3】:
      $url = "http://www.example.com/hu/link";
      
      $split_url = explode('/', $url);
      echo $split_url[3];
      

      输出:

      hu
      

      【讨论】:

        【解决方案4】:

        您可以像这样使用正则表达式preg_match

        $url = 'http://www.example.com/hu/link';
        preg_match('/.*www.*\/(.*)\//i',$url, $matches);
        print_r($matches[1]);
        

        【讨论】:

        • 我投反对票的原因。 1) 存在解析错误。 2) 如果 URL 不包含 www. 怎么办?不会有比赛。 3) 当你可以explode() 时,这是“过度设计”,尽管这是一个不错的选择。
        猜你喜欢
        • 1970-01-01
        • 2016-12-26
        • 2019-02-19
        • 1970-01-01
        • 1970-01-01
        • 1970-01-01
        • 1970-01-01
        • 1970-01-01
        • 2021-12-19
        相关资源
        最近更新 更多