首页
学习
活动
专区
工具
TVP
发布
社区首页 >问答首页 >使用PHP从URL获取第一个目录

使用PHP从URL获取第一个目录
EN

Stack Overflow用户
提问于 2014-05-12 16:31:41
回答 2查看 8.2K关注 0票数 3

我在变量中有这样的url:

代码语言:javascript
复制
$url = 'http://mydomain.com/yep/2014-04-01/some-title';

然后,我想要的是从它中解析出“yep”部分。我试着这样做:

代码语言:javascript
复制
$url_folder = strpos(substr($url,1), "/"));

但由于某种原因,它会返回一些数字。我做错了什么?

EN

回答 2

Stack Overflow用户

发布于 2014-05-12 16:37:20

首先,substr(...,1)会返回位置1之后的所有东西,所以这不是你想要做的。

所以http://mydomain.com/yep/2014-04-01/some-title变成了ttp://mydomain.com/yep/2014-04-01/some-title

然后你在位置1之后的所有东西上做strpos,寻找第一个/…(这将是ttp://mydomain.com/yep/2014-04-01/some-title中的第一个/ )。函数strpos()将返回它的位置(数字)。所以它返回的是数字4

而是使用explode()

代码语言:javascript
复制
$parts = explode('/', $url);
echo $parts[3]; // yep
// $parts[0] = "http:"
// $parts[1] = ""
// $parts[2] = "mydomain.com"
// $parts[3] = "yep"
// $parts[4] = "2014-04-01"
// $parts[4] = "some-title"
票数 3
EN

Stack Overflow用户

发布于 2014-05-12 16:51:36

使用parse_url函数。

代码语言:javascript
复制
$url = 'http://mydomain.com/yep/2014-04-01/some-title';
$url_array = parse_url($url);
preg_match('@/(?<path>[^/]+)@', $url_array['path'], $m);
$url_folder = $m['path'];
echo $url_folder;
票数 0
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/23604326

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档