/** * Creates a new request object. Uses the system environment and global * variables to put necessary parameters into place. * * @param string method * @param peer.URL url */ protected function newRequest($method, \peer\URL $url) { $q = $url->getQuery(); $_SERVER['REQUEST_METHOD'] = $method; $_SERVER['SERVER_PROTOCOL'] = 'HTTP/1.1'; $_SERVER['HTTP_HOST'] = $url->getHost(); $_SERVER['REQUEST_URI'] = $url->getPath('/') . ($q ? '?' . $q : ''); $_SERVER['QUERY_STRING'] = $q; if ('https' === $url->getScheme()) { $_SERVER['HTTPS'] = 'on'; } $_REQUEST = $url->getParams(); }
/** * Creates a new request object * * @param string method * @param peer.URL url * @return scriptlet.HttpScriptletRequest */ protected function newRequest($method, URL $url) { $q = $url->getQuery(''); $req = new \scriptlet\HttpScriptletRequest(); $req->method = $method; $req->env['SERVER_PROTOCOL'] = 'HTTP/1.1'; $req->env['REQUEST_URI'] = $url->getPath('/') . ($q ? '?' . $q : ''); $req->env['QUERY_STRING'] = $q; $req->env['HTTP_HOST'] = $url->getHost(); if ('https' === $url->getScheme()) { $req->env['HTTPS'] = 'on'; } $req->setHeaders(array()); $req->setParams($url->getParams()); return $req; }
/** * Creates a new request object * * @param string method * @param peer.URL url * @return scriptlet.xml.XMLScriptletRequest */ protected function newRequest($method, URL $url) { $q = $url->getQuery(''); $req = new XMLScriptletRequest(); $req->method = $method; $req->env['PRODUCT'] = $req->env['DEF_PROD'] = 'xp'; $req->env['STATE'] = $req->env['DEF_STATE'] = null; $req->env['PAGE'] = $req->env['DEF_PAGE'] = null; $req->env['LANGUAGE'] = $req->env['DEF_LANG'] = null; $req->env['SERVER_PROTOCOL'] = 'HTTP/1.1'; $req->env['REQUEST_URI'] = $url->getPath('/') . ($q ? '?' . $q : ''); $req->env['QUERY_STRING'] = $q; $req->env['HTTP_HOST'] = $url->getHost(); $req->env['LANGUAGE'] = 'en_US'; if ('https' === $url->getScheme()) { $req->env['HTTPS'] = 'on'; } $req->setHeaders([]); $req->setParams($url->getParams()); return $req; }
public function associativeArrayMoreDimensionalQueryCalculation() { $u = new URL('http://example.com/ajax?load=getXML&data%5Bproject%5D%5BName%5D%5BValue%5D=project&data%5Bproject%5D%5BID%5D%5BValue%5D=1337&data%5BlangCode%5D=en'); $this->assertEquals('load=getXML&data[project][Name][Value]=project&data[project][ID][Value]=1337&data[langCode]=en', $u->getQuery()); }