/** * parse_str ersetzt "." durch "_" in der ersten Ebene des Arrays */ public function testParseQueryString() { $query = new Query('hub.mode=publish&hub.url=http://www.example.com'); $this->assertEquals(array('hub.mode' => 'publish', 'hub.url' => 'http://www.example.com'), $query->toArray()); }
/** * @param Blar\Http\HttpRequest $request Request. * @param Blar\Webservice\WebserviceMethod $method Method. * @return self */ protected function prepareRequest($request, $method) { $templateVariables = new Collection(); $query = new Query(); $body = array(); foreach ($method->getParameters() as $parameter) { switch ($parameter->getStyle()) { case 'template': $templateVariables->set($parameter->getName(), $parameter->getValue()); break; case 'query': $query->set($parameter->getName(), $parameter->getValue()); break; case 'header': $request->getHeaders()->set($parameter->getName(), $parameter->getValue()); break; case 'body': $body[$parameter->getName()] = $parameter->getValue(); break; } } $url = $method->getUrl(); $template = new UriTemplate($url); $url = $template->create($templateVariables); $url = new Url($url); $url->setQuery($query); $request->setUrl($url); $request->setBody($body); return $this; }