2012-01-13 4 views
0
여기

슈퍼 멍청한 놈 질문 ...얻기 상대 경로

파일 소스 : www.mysite.com/blah/blah/customdir/ajax/folder/file.php

내가 포함 할 소스 :

www.mysite.com/blah/blah/customdir/include/func/functions.php

그래서 나는 시도했다 :

require_once('.../include/func/functions.php'); 
require_once('../include/func/functions.php'); 
require_once('././include/func/functions.php'); 

등 다양한 변형이 있습니다. 어떻게해야합니까? 모든 파일에 최상위 경로를 설정하는 것은 옵션이 아닙니다. (함수 파일의 용도는 무엇입니까?)

위의 각각은 오류를 제공합니다 : 경고 : 포함 (././ include/func/functions.php) [function.include] : 스트림을 열지 못했습니다 : /home/mysite/public_html/mysite.com/customdir/ajax/folder/index.php on line 3에있는 파일이나 디렉토리가 없습니다.

경고 : include (././include/func/function.php) [function.include] : 스트림을 열지 못했습니다 : /home/mysite/public_html/mysite.com/customdir/ajax/folder/에 해당 파일이나 디렉토리가 없습니다. 3 행의 index.php

경고 : include() [function.include] : 실패한 열기 '././include /home/mysite/public_html/mysite.com/customdir/ajax/folder/에 포함시키기 위해 /func/functions.php '(include_path ='. :/usr/lib/php :/usr/local/lib/php ') 3 행의 index.php

답변

2

파일을 포함하는 방법은 여러 가지가 있습니다. 그러나 상대 경로를 시도하고있는 것 같습니다. 어떤 경우에는 시도하십시오 :

require_once '../../include/func/functions.php'; 

learn more about your options for including files 나는 것이 좋습니다. 그러나 간단히 말해서, 각각 ../은 디렉토리를 다시 가져옵니다. ./은 현재 디렉토리를 나타냅니다. 그렇지 않으면, 항상 절대 경로를 사용하거나 하이브리드 (꿀꺽 거리기) 할 수 있습니다.

+0

작동합니다. 감사. 왜 두 배 기간이 걸리는가? 절름발이 ... 너무 많은 것을 시도했습니다. – phpmeh

+0

왜냐하면 현재 스크립트 위에 두 개의 디렉토리가 있기 때문입니다. 업데이트를 참조하십시오. –

0

아파치에서 실행 중입니까? getenv ("DOCUMENT_ROOT")를 사용하고 거기에서 경로를 설정하십시오.