Jelix\Routing\ClientRequest::_initUrlData PHP Method

_initUrlData() protected method

init the url* properties
protected _initUrlData ( )
    protected function _initUrlData()
    {
        $conf =& App::config()->urlengine;
        $this->urlScript = $conf['urlScript'];
        $this->urlScriptPath = $conf['urlScriptPath'];
        $this->urlScriptName = $conf['urlScriptName'];
        $piiqp = $conf['pathInfoInQueryParameter'];
        if ($piiqp) {
            if (isset($_GET[$piiqp])) {
                $pathinfo = $_GET[$piiqp];
                unset($_GET[$piiqp]);
            } else {
                $pathinfo = '';
            }
        } else {
            if (isset($_SERVER['PATH_INFO'])) {
                $pathinfo = $_SERVER['PATH_INFO'];
            } else {
                if (isset($_SERVER['ORIG_PATH_INFO'])) {
                    $pathinfo = $_SERVER['ORIG_PATH_INFO'];
                } else {
                    $pathinfo = '';
                }
            }
        }
        if ($pathinfo == $this->urlScript) {
            //when php is used as cgi and if there isn't pathinfo in the url
            $pathinfo = '';
        }
        if (App::config()->isWindows && $pathinfo && strpos($pathinfo, $this->urlScript) !== false) {
            //under IIS, we may get  /subdir/index.php/mypath/myaction as PATH_INFO, so we fix it
            $pathinfo = substr($pathinfo, strlen($this->urlScript));
        }
        $this->urlPathInfo = $pathinfo;
    }