mirror of
https://gitee.com/fastadminnet/framework.git
synced 2026-07-01 12:42:48 +08:00
改进Request类
This commit is contained in:
@@ -218,7 +218,11 @@ class Request
|
||||
$this->url = $url;
|
||||
return;
|
||||
} elseif (!$this->url) {
|
||||
$this->url = $_SERVER[Config::get('url_request_uri')];
|
||||
if (IS_CLI) {
|
||||
$this->url = isset($_SERVER['argv'][1]) ? $_SERVER['argv'][1] : '';
|
||||
} else {
|
||||
$this->url = $_SERVER[Config::get('url_request_uri')];
|
||||
}
|
||||
}
|
||||
return true === $url ? $this->domain() . $this->url : $this->url;
|
||||
}
|
||||
@@ -252,17 +256,20 @@ class Request
|
||||
$this->baseFile = $file;
|
||||
return;
|
||||
} elseif (!$this->baseFile) {
|
||||
$script_name = basename($_SERVER['SCRIPT_FILENAME']);
|
||||
if (basename($_SERVER['SCRIPT_NAME']) === $script_name) {
|
||||
$url = $_SERVER['SCRIPT_NAME'];
|
||||
} elseif (basename($_SERVER['PHP_SELF']) === $script_name) {
|
||||
$url = $_SERVER['PHP_SELF'];
|
||||
} elseif (isset($_SERVER['ORIG_SCRIPT_NAME']) && basename($_SERVER['ORIG_SCRIPT_NAME']) === $script_name) {
|
||||
$url = $_SERVER['ORIG_SCRIPT_NAME'];
|
||||
} elseif (($pos = strpos($_SERVER['PHP_SELF'], '/' . $script_name)) !== false) {
|
||||
$url = substr($_SERVER['SCRIPT_NAME'], 0, $pos) . '/' . $script_name;
|
||||
} elseif (isset($_SERVER['DOCUMENT_ROOT']) && strpos($_SERVER['SCRIPT_FILENAME'], $_SERVER['DOCUMENT_ROOT']) === 0) {
|
||||
$url = str_replace('\\', '/', str_replace($_SERVER['DOCUMENT_ROOT'], '', $_SERVER['SCRIPT_FILENAME']));
|
||||
$url = '';
|
||||
if (!IS_CLI) {
|
||||
$script_name = basename($_SERVER['SCRIPT_FILENAME']);
|
||||
if (basename($_SERVER['SCRIPT_NAME']) === $script_name) {
|
||||
$url = $_SERVER['SCRIPT_NAME'];
|
||||
} elseif (basename($_SERVER['PHP_SELF']) === $script_name) {
|
||||
$url = $_SERVER['PHP_SELF'];
|
||||
} elseif (isset($_SERVER['ORIG_SCRIPT_NAME']) && basename($_SERVER['ORIG_SCRIPT_NAME']) === $script_name) {
|
||||
$url = $_SERVER['ORIG_SCRIPT_NAME'];
|
||||
} elseif (($pos = strpos($_SERVER['PHP_SELF'], '/' . $script_name)) !== false) {
|
||||
$url = substr($_SERVER['SCRIPT_NAME'], 0, $pos) . '/' . $script_name;
|
||||
} elseif (isset($_SERVER['DOCUMENT_ROOT']) && strpos($_SERVER['SCRIPT_FILENAME'], $_SERVER['DOCUMENT_ROOT']) === 0) {
|
||||
$url = str_replace('\\', '/', str_replace($_SERVER['DOCUMENT_ROOT'], '', $_SERVER['SCRIPT_FILENAME']));
|
||||
}
|
||||
}
|
||||
$this->baseFile = $url;
|
||||
}
|
||||
|
||||
Reference in New Issue
Block a user