2013-05-01 2 views
0

PHP로 재사용 가능한 모듈을 작성 중입니다. 이 모듈은 임의의 페이지에 내용을 쓸 수 있지만이 모듈 내의 스크립트를 참조하는 URL이 필요합니다. 지금 당장 모듈의 루트를 가리키는 하드 코딩 된 변수를 사용합니다 :URL을 사용하여 재사용 가능한 모듈을 작성하는 가장 좋은 방법은 무엇입니까?

$module_root = "http://www.example.com/my_module/"; 

동적으로 모듈의 루트 URL을 확인할 방법이 있습니까?

답변

0

1. URI가 귀하의 경우에는

$_SERVER['REQUEST_URI'] 

를 지향에게이 포함되어 있어야합니다 그래서

/my_module/ 

를 사용하여 :

$parts = explode('/', $_SERVER['REQUEST_URI']); 

당신은 $에서 루트 모듈 이름을 갖게됩니다 부품 [1] 변수.

2. 파일 시스템은

당신이 어디에 당신이 즉 moduleMain.php 결정하기 위해 파일 시스템 경로를 사용할 수

$module_root = dirname(__FILE__); 

서브 모듈/pluginMain.php

$submodule = mb_substr(dirname(__FILE__), mb_strlen($module_root)); 

을 (지향 $ module_root 변수를 사용할 수 있다고 가정)

+0

이 모듈은 모듈 외부의 다른 PHP 스크립트에 포함되어 있습니다. 따라서, 모듈 (포함 된 스크립트) 내에서 변수를 호출하더라도 임의의 (포함) 스크립트에 URI를 표시합니다. –

+0

파일 시스템 경로를 사용하여 현재 위치를 파악할 수 있습니다. 예 : moduleMain.php $ module_root = dirname (__FILE__); submodule/pluginMain.php $ submodule = mb_substr (dirname (__FILE__), mb_strlen ($ module_root))); ($ module_root 변수를 사용할 수 있다고 가정) – user2339558

+0

(2)의 경우 dirname (__FILE__)에 "C : \ Documents and Settings \ ..."가 표시됩니다. $ module_root의 URL 버전을 얻으려면 어떻게해야합니까? –

관련 문제