저는 콘텐츠 관리 시스템 (nakid)에서 작업 해 왔으며 가장 어려운 과제 중 하나는 파일 탐색입니다. 파일 경로 및 설정이 로컬 및 원격 서버에서 작동하는지 확인하고 싶습니다.PHP 파일 탐색 (로컬 + 원격)
first.php (모든 페이지에서 사용) : 나는 디렉토리를 원하기 때문에
이 프로그램은//Set paths to nakid root
$core['dir_cur'] = dirname(__FILE__);
$core['dir_root'] = $_SERVER['DOCUMENT_ROOT'];
//Detect current nakid directory
$get_dirnakid_1 = str_replace("\\","/",dirname(__FILE__));//If on local
$get_dirnakid_2 = str_replace("/includes/php","",$get_dirnakid_1);
$get_dirnakid_3 = str_replace($_SERVER['DOCUMENT_ROOT'],"",$get_dirnakid_2);
//remove first "/"
if(substr($get_dirnakid_3, 0,1) == "/"){
$get_dirnakid_3 = substr($get_dirnakid_3, 1);
}
//Set some default vars
$core['dir_nakid_path'] = $get_dirnakid_3;
$core['dir_nakid'] = $core['dir_root']."/".$core['dir_nakid_path'];//We need to get system() for this real value - below
이 방법은 나는 또한 그것을 한 이유입니다 지금 내 설정은 다음과 같이 꽤 많은 일이있다 (/ nakid) (/ cms) (/ admin/cms)
내가 잘못된 방법을하고 있거나 모든 것을 처리하는 간단한 방법이 있습니다. 이.
는 코드에 대해 자세히 살펴 얻을하는 데 도움이 모든 것이 어떻게 사용되고 있는지 경우에 나는 모두가 nakid.org에서이
편집 : 그냥보다 약간 다릅니다 제가 nakid.org에서이 실현 내 새로 게시 된 코드,하지만 같은 생각은 여전히 내가하려고하는 것에 적용됩니다.
http://www.php.net/manual/en/function.getcwd.php
필자는/includes/php를 사용하여 설치 경로 (first.php가/includes/php에 있음)를 확인합니다. 다른 방법으로해야합니까? – kilrizzy
사용자가 시스템에서 경로를 변경하는 방법이 있지만이 초기 설정은 발생하기 전에 발생합니다. – kilrizzy
게시자가 게시하려는 소프트웨어 인 경우 추가 고려 사항으로 " local "과"remote "는 일반적으로 여러분이하고있는 일을 반영하지 않기 때문에 (백 슬래시는 Windows 컴퓨터의 디렉토리 구분자이고 Unix/Linux 및 다른 사람들의 슬래시입니다. 그러나 그 반대의 경우도 있습니다. 윈도우 머신은 "원격"서버 임). –