2013-04-21 3 views

답변

1
if ($_SERVER['REQUEST_URI'] == '/' || strpos($_SERVER['REQUEST_URI'], '/' . $_SERVER['SCRIPT_NAME']) === 0) { 
    // something 
} else { 
    // something else 
} 
+0

하지'/ product.php'도 자격이 :

어쨌든, 당신은 URI에 대한 dirname(), 또는 parse_url()을 사용하여 파일 이름을 제거 다음 두 가지 중 하나를 사용할 수 있습니까? – webbiedave

+0

네, 맞습니다. 나는 편집했다. – MrRP

+0

'__FILE__'은 현재 실행중인 파일의 시스템 경로를 포함합니다 (예 :'/ var/www/html/public_html/somefile.php'). 그것은'REQUEST_URI '안에 절대 포함되지 않을 것입니다. – webbiedave

1

당신은 (웹 스크립트 기본적으로 URL) 루트 URI는 $_SERVER['REQUEST_URI'] 내부에 저장된 의미하거나 __FILE__ (또는 $_SERVER['SCRIPT_NAME']) 내부의 루트 디렉토리가 될 수있는 말인가요?

dirname(__FILE__) == '/'; 
dirname($_SERVER['REQUEST_URI']) 
+0

그가 함수를 포함 파일에 넣으면 어떻게 될까요? 항상 그 * 파일의 디렉토리를 포함하는 파일의 디렉토리가 아니라 그 디렉토리를 포함하는 디렉토리를 리턴하지 않을까요? – webbiedave

+0

그는'$ _SERVER [ 'SCRIPT_NAME']'을 사용할 수 있습니다. – Vyktor

+0

죄송합니다. 명확하지 않은 경우 프로그래밍에 익숙하지 않은 분은 죄송합니다. 내 말은, 함수가 example.com에서 실행되면 뭔가를 반환하지만 example.com/anythingelse에서 실행되면 다른 결과를 반환한다는 것입니다. – user1745555

관련 문제