diff options
| author | Christian Weiske <cweiske@cweiske.de> | 2014-07-04 07:33:29 +0200 |
|---|---|---|
| committer | Christian Weiske <cweiske@cweiske.de> | 2014-07-04 07:33:29 +0200 |
| commit | 979fd71983f72991b7b698d0fa57b46213503672 (patch) | |
| tree | aabd3e5fa1a7f825e63de5b4ba6e3f76b70928a9 /src | |
| parent | bbe055e8c11da1ec0eddee461a31fb5acf382c92 (diff) | |
| download | phorkie-979fd71983f72991b7b698d0fa57b46213503672.tar.gz phorkie-979fd71983f72991b7b698d0fa57b46213503672.zip | |
detect baseurl automatically, load config file from .phar
Diffstat (limited to 'src')
| -rw-r--r-- | src/phorkie/Tools.php | 27 |
1 files changed, 26 insertions, 1 deletions
diff --git a/src/phorkie/Tools.php b/src/phorkie/Tools.php index fc815cc..7c9c46e 100644 --- a/src/phorkie/Tools.php +++ b/src/phorkie/Tools.php @@ -70,6 +70,31 @@ class Tools return $file; } -} + public static function detectBaseUrl() + { + if (!isset($_SERVER['REQUEST_URI']) + || !isset($_SERVER['SCRIPT_NAME']) + ) { + return '/'; + } + + $scriptName = $_SERVER['SCRIPT_NAME']; + $requestUri = $_SERVER['REQUEST_URI']; + if (substr($scriptName, -4) != '.php') { + //a phar + return $scriptName . '/'; + } + + if (substr($requestUri, -4) != '.php') { + $requestUri .= '.php'; + } + $snl = strlen($scriptName); + if (substr($requestUri, -$snl) == $scriptName) { + return substr($requestUri, 0, -$snl) . '/'; + } + + return '/'; + } +} ?> |
