2012-10-15 2 views
0

우선이 질문에 이미 답변 한 경우 사과를 드리고 싶습니다. 운이 좋지 않은 이틀 동안 찾고 있습니다. 나는이 서로 다른 폴더에있는 2 개 PHP 파일,이다른 PHP 파일에 포함 된 PHP 파일의 상대 경로를 찾는 방법은 무엇입니까?

:

여기 내 설정이다

AAA/1.php AAA를/BBB/CCC/2.php

"2. php "는"1.php "에 포함됩니다.

여러 다른 폴더에서 "2.php"를 사용해야하므로 어떤 폴더에서 현지화되었는지 알 수 있어야합니다. "2.php은"내가 좋아하는 몇 가지 코드가 있어야 그렇게 : 위의 예에서 그래서

$directory = [whatever code I need to know where I am]; 

를 상대 경로가 있어야한다 : BBB/CCC

내가 여러 기능을 시도하고 내가 찾은 코딩하지만, 나는 "1.php"로만 전체 서버 경로를 얻을 수있다.

아무도 도와 줄 수 있습니까?

+0

난 당신이 http://stackoverflow.com/questions/12886788/how-to-store-the-root-of-my-subsite/보고해야한다고 생각 12886827 # 12886827 – Baba

답변

2

나는 당신을 위해 무엇을 찾고있는 것은 dirname(__FILE__);

더 많은 정보를 원하시면 PHP: Magic Constantsdirname()를 참조 믿습니다.

__FILE__ 파일의 전체 경로와 파일 이름입니다. 포함 안에 사용하면 포함 된 파일의 이름이 반환됩니다. PHP 4.0.2부터 FILE에는 항상 심볼릭 링크가있는 절대 경로가 포함되어 있지만 구버전에서는 상대 경로가 일부 환경에 포함되어 있습니다.

+0

그게 내가 찾고 있던 바로 그거야 ... 네가 도와 줘서 고마워. –

0

문서 루트를 경로의 시작으로 사용하면 걱정할 필요가 없습니다.

당신이 한 php.ini 파일 구성이 너무 많이 변경되지 않는 곳

$_SERVER['DOCUMENT_ROOT'].'/AAA/1.php' 

$_SERVER['DOCUMENT_ROOT'].'/AAA/BBB/CCC/2.php' 

상관없이에서 작동합니다.

아니면 basename()의 조합을 사용할 수 있습니다, dirname()

관련 문제