1 // [HTTP_X_FORWARDED_PROTO] => https // [HTTP_X_FORWARDED_PORT] => 443 if (!empty($_SERVER['HTTP_X_FORWARDED_PROTO']) && 'https' == $_SERVER['HTTP_X_FORWARDED_PROTO']) { return true; } else if (!empty($_SERVER['HTTPS']) && 'on' == $_SERVER['HTTPS']) { return true; } return false; } // @usage: Request::getHostUri(); public static function getHostUri() { // return current host with protocol // [SCRIPT_URI] => http://biuro.biall-net.pl:34543/dev-pl/se-master/wfs-qgis.php/default_db/ // [SCRIPT_URL] => /dev-pl/se-master/wfs-qgis.php/default_db/ // [SCRIPT_NAME] => /dev-pl/se-master/wfs-qgis.php // [HTTP_HOST] => biuro.biall-net.pl $uri = (Request::isHttps())? 'https://' : 'http://'; $uri .= "{$_SERVER['HTTP_HOST']}"; return $uri; } public static function getHost() { return V::get('HTTP_HOST', '', $_SERVER); } // @usage: Request::getScriptUri(); public static function getScriptUri() { // [SCRIPT_URI] => http://biuro.biall-net.pl:34543/dev-pl/se-master/wfs-qgis.php/default_db/ // [SCRIPT_URL] => /dev-pl/se-master/wfs-qgis.php/default_db/ // [SCRIPT_NAME] => /dev-pl/se-master/wfs-qgis.php // [HTTP_HOST] => biuro.biall-net.pl $uri = (Request::isHttps())? 'https://' : 'http://'; $uri .= "{$_SERVER['HTTP_HOST']}{$_SERVER['SCRIPT_URL']}"; return $uri; } // @usage: Request::getPathUri() . "indeks.php?..." public static function getPathUri() { // [SCRIPT_URI] => http://biuro.biall-net.pl:34543/dev-pl/se-master/wfs-qgis.php/default_db/ // [SCRIPT_URL] => /dev-pl/se-master/wfs-qgis.php/default_db/ // [SCRIPT_NAME] => /dev-pl/se-master/wfs-qgis.php // [HTTP_HOST] => biuro.biall-net.pl $uri = (Request::isHttps())? 'https://' : 'http://'; $uri .= $_SERVER['HTTP_HOST']; $scriptPath = ''; $scriptName = $_SERVER['SCRIPT_NAME']; if ('/' == substr($scriptName, -1)) { $scriptPath = $scriptName; } else { $scriptPathEx = explode('/', $scriptName); array_pop($scriptPathEx); $scriptPath = implode('/', $scriptPathEx) . '/'; } $uri .= $scriptPath; return $uri; } // @usage: Request::getUriDirName() . "/index.php?..."; public static function getUriDirName() { // [SCRIPT_URI] => http://biuro.biall-net.pl:34543/dev-pl/se-master/wfs-qgis.php/default_db/ // [SCRIPT_URL] => /dev-pl/se-master/wfs-qgis.php/default_db/ // [SCRIPT_NAME] => /dev-pl/se-master/wfs-qgis.php // [HTTP_HOST] => biuro.biall-net.pl $uri = (Request::isHttps())? 'https://' : 'http://'; $uri .= $_SERVER['HTTP_HOST']; $uri .= dirname($_SERVER['SCRIPT_NAME']); return $uri; } // @usage: Request::getRewriteTaskPath(); public static function getRewriteTaskPath() { $reqUri = $_SERVER['REQUEST_URI']; $reqScript = $_SERVER['SCRIPT_NAME']; $taskPath = str_replace($reqScript, '', $reqUri); return $taskPath; } // @usage: Request::getRequestBody(); public static function getRequestBody() { static $requestBody = null; if (null === $requestBody) { $requestBody = file_get_contents("php://input"); } return $requestBody; } // @usage: Request::getRequestJson(); public static function getRequestJson() { static $requestJson = null; $body = Request::getRequestBody(); if (!empty($body)) { $requestJson = @json_decode($body, $assoc = true); if (null == $requestJson && 0 !== json_last_error()) throw new Exception("Error Parsing Json from Request" . json_last_error()); } return $requestJson; } // @usage: Request::getUserIp(); public static function getUserIp() { static $ip = null; if (null !== $ip) return $ip; if (isset($_SERVER['HTTP_CLIENT_IP'])) $ip = $_SERVER['HTTP_CLIENT_IP']; else if (isset($_SERVER['HTTP_X_FORWARDED_FOR'])) $ip = $_SERVER['HTTP_X_FORWARDED_FOR']; else if (isset($_SERVER['HTTP_X_FORWARDED'])) $ip = $_SERVER['HTTP_X_FORWARDED']; else if (isset($_SERVER['HTTP_FORWARDED_FOR'])) $ip = $_SERVER['HTTP_FORWARDED_FOR']; else if (isset($_SERVER['HTTP_FORWARDED'])) $ip = $_SERVER['HTTP_FORWARDED']; else if (isset($_SERVER['REMOTE_ADDR'])) $ip = $_SERVER['REMOTE_ADDR']; else $ip = 'UNKNOWN'; return $ip; } }