public function detectPath(string $protocol = ''): string
	{
		if (empty($protocol))
		{
			$protocol = 'REQUEST_URI';
		}

		switch ($protocol)
		{
			case 'REQUEST_URI':
				$path = $this->parseRequestURI();
				break;
			case 'QUERY_STRING':
				$path = $this->parseQueryString();
				break;
			case 'PATH_INFO':
			default:
				$path = $this->fetchGlobal('server', $protocol) ?? $this->parseRequestURI();
				break;
		}

		return $path;
	}
public function detectPath(string $protocol = ''): string
	{
		if (empty($protocol))
		{
			$protocol = 'REQUEST_URI';
		}

		switch ($protocol)
		{
			case 'REQUEST_URI':
				$path = $this->parseRequestURI();
				break;
			case 'QUERY_STRING':
				$path = $this->parseQueryString();
				break;
			case 'PATH_INFO':
			default:
				$path = $this->fetchGlobal('server', $protocol) ?? $this->parseRequestURI();
				break;
		}

		return $path;
	}
public function detectPath ( string $ protocol = '' ) : string { if ( empty ( $ protocol ) ) { $ protocol = 'REQUEST_URI' ; } switch ( $ protocol ) { case 'REQUEST_URI' : $ path = $ this -> parseRequestURI ( ) ; break ; case 'QUERY_STRING' : $ path = $ this -> parseQueryString ( ) ; break ; case 'PATH_INFO' : default : $ path = $ this -> fetchGlobal ( 'server' , $ protocol ) ?? $ this -> parseRequestURI ( ) ; break ; } return $ path ; }
Based on the URIProtocol Config setting, will attempt to
detect the path portion of the current URI.

@param string $protocol

@return string
Based on the URIProtocol Config setting will attempt to detect the path portion of the current URI .