PHP:从路径获取最后一个目录名称

时间:2013-01-11 19:18:06

标签: php trim

我正在编写一个函数来获取一些不同的数据库查询。现在情况进展顺利但只需要从定义的路径中获取最后一个目录名称。

$qa_path=site_root('/learnphp/docs/');

我想从上面的路径只获得docs。这里的site_root只是$_SERVER['DOCUMENT_ROOT']所以我怎么才能得到docs

由于

8 个答案:

答案 0 :(得分:23)

最简单的方法是使用basename($yourpath),如您所见:http://php.net/basename

答案 1 :(得分:20)

如果您的字符串包含最后的文件,则提供的答案不起作用,例如:

basename('/home/mypath/test.zip');

给出

test.zip

因此,如果您的字符串包含该文件,请不要先忘记 dirname

basename(dirname('/home/mypath/test.zip'));

给出

mypath

答案 2 :(得分:3)

这是最简单的方法:

<?php
  echo basename(getcwd());
?>

getcwd()=提供完整的目录路径 basename()=给你最后一个目录

答案 3 :(得分:2)

试试explode('/', '/learnphp/docs/') 将字符串拆分为数组位置。然后获取最后一个位置。

以下是更多信息: http://php.net/manual/en/function.explode.php

答案 4 :(得分:1)

你可以使用这个简单的片段:

$qa_path=site_root('/learnphp/docs/');
$qa_path = explode("/", $qa_path);
$qa_path = $qa_path[count($qa_path) - 1];

答案 5 :(得分:1)

$qa_path=explode('/', '/learnphp/docs/');
echo $qa_path[2]; // output docs

答案 6 :(得分:1)

这会对你有所帮助

$qa_path=site_root('/learnphp/docs/');
$q_path = explode ("/", $qa_path);
$lastV =  end($q_path);

答案 7 :(得分:1)

这将为您提供当前目录名称: echo basename(dirname(__FILE__));