2012-04-23 2 views
0

나는 디렉토리 목록을 작성 중이며 마지막 디렉토리의 이름을 얻고 싶습니다.주어진 경로의 마지막 부분을 검색하는 방법은 무엇입니까?

예 :

/data/henry/files/gallery 

가 난 단지 갤러리있는 마지막 디렉토리를 싶어.

나는 substr('abcdef', 1)으로 시도했지만 정적입니다.

디렉토리에 배열을 저장 한 다음 마지막 값을 가져 오는 아이디어가 있지만 어떻게 할 수 있습니까?

편집 :

고맙습니다.

내 솔루션은 더 이상 권장되지 않은 :

$dirarray = explode("/",$row['source']); 
$total = count($dirarray); 
$sharename = $dirarray[($total-1)]; 

답변

4
echo basename('/data/henry/files/gallery'); 

http://php.net/basename

+0

와우는 너무 쉬웠다. 고맙습니다! – Mezzan

+0

다른 해결책을 찾았지만 오래되었습니다. – Mezzan

+0

이것이 어떻게해야할까요? –

0

어떻게 정규 표현식을 사용하는 방법에 대해? 텍스트를 가정 $text 변수에 :

preg_match_all("|(/[a-z]+)$|", $text, $result); 

$result/gallery 포함됩니다.

+0

오타를 수정 한 후에도 작동하지 않습니다.'/ foo/bar-baz' 또는'/ hello/from/pcre_world' –

+0

이 올바르게 포맷되고 누락 된 따옴표가 수정되지는 않습니다. 그러나'basename()'은 여전히 ​​더 나은 대답입니다. PHP는 이러한 종류의 공통 연산을위한 많은 기능을 가지고 있습니다. 항상 자신이해야한다고 생각하지는 않습니다. – Spudley

관련 문제