Tipsy\Request::path PHP Метод

path() публичный Метод

public path ( $url = null )
    public function path($url = null)
    {
        if (!isset($this->_path)) {
            if (!$url) {
                if ($_REQUEST['__url']) {
                    $url = $_REQUEST['__url'];
                } else {
                    $request = explode('?', $_SERVER['REQUEST_URI'], 2)[0];
                    $dir = $_SERVER['SCRIPT_NAME'];
                    $url = preg_replace('/^' . str_replace('/', '\\/', '' . $dir) . '/', '', $request);
                    $dir = dirname($_SERVER['SCRIPT_NAME']);
                    $url = preg_replace('/^' . str_replace('/', '\\/', '' . $dir) . '/', '', $url);
                    $url = substr($url, 0, 1) == '/' ? $url : '/' . $url;
                    $this->_base = substr($dir, -1) == '/' ? $dir : $dir . '/';
                }
            }
            while (strpos($url, '//') !== false) {
                $url = str_replace('//', '/', $url);
            }
            if ($url[0] == '/') {
                $url = substr($url, 1);
            }
            $url = trim($url);
            $url = ltrim($url, '/');
            $url = rtrim($url, '/');
            $url = trim($url);
            $this->_path = $url;
        }
        return $this->_path;
    }