本文整理汇总了PHP中HttpRequest::getPost方法的典型用法代码示例。如果您正苦于以下问题:PHP HttpRequest::getPost方法的具体用法?PHP HttpRequest::getPost怎么用?PHP HttpRequest::getPost使用的例子?那么恭喜您, 这里精选的方法代码示例或许可以为您提供帮助。您也可以进一步了解该方法所在类HttpRequest
的用法示例。
在下文中一共展示了HttpRequest::getPost方法的6个代码示例,这些例子默认根据受欢迎程度排序。您可以为喜欢或者感觉有用的代码点赞,您的评价将有助于系统推荐出更棒的PHP代码示例。
示例1: testGetPostNamedArray
public function testGetPostNamedArray()
{
// Mock
$this->mockPost('test', array("one" => "testValue", "two" => "testValue2"));
$this->assertEquals('testValue', $this->object->getPost('test', "one"));
$this->assertEquals('testValue2', $this->object->getPost('test', "two"));
}
示例2: testInvalidEncoding
/**
* Invalid encoding test.
* @return void
*/
public function testInvalidEncoding()
{
define('INVALID', "vÄž");
define('CONTROL_CHARACTERS', "AB€C");
$_GET = array('invalid' => INVALID, 'control' => CONTROL_CHARACTERS, INVALID => 1, CONTROL_CHARACTERS => 1, 'array' => array(INVALID => 1));
$_POST = array('invalid' => INVALID, 'control' => CONTROL_CHARACTERS, INVALID => 1, CONTROL_CHARACTERS => 1, 'array' => array(INVALID => 1));
$_COOKIE = array('invalid' => INVALID, 'control' => CONTROL_CHARACTERS, INVALID => 1, CONTROL_CHARACTERS => 1, 'array' => array(INVALID => 1));
$_FILES = array(INVALID => array('name' => 'readme.txt', 'type' => 'text/plain', 'tmp_name' => 'C:\\PHP\\temp\\php1D5B.tmp', 'error' => 0, 'size' => 209), CONTROL_CHARACTERS => array('name' => 'readme.txt', 'type' => 'text/plain', 'tmp_name' => 'C:\\PHP\\temp\\php1D5B.tmp', 'error' => 0, 'size' => 209), 'file1' => array('name' => INVALID, 'type' => 'text/plain', 'tmp_name' => 'C:\\PHP\\temp\\php1D5B.tmp', 'error' => 0, 'size' => 209));
$request = new HttpRequest();
$this->assertEquals(INVALID, $request->getQuery('invalid'));
$this->assertEquals(CONTROL_CHARACTERS, $request->getQuery('control'));
$this->assertEquals('1', $request->getQuery(INVALID));
$this->assertEquals('1', $request->getQuery(CONTROL_CHARACTERS));
$this->assertEquals('1', $request->query['array'][INVALID]);
$this->assertEquals(INVALID, $request->getPost('invalid'));
$this->assertEquals(CONTROL_CHARACTERS, $request->getPost('control'));
$this->assertEquals('1', $request->getPost(INVALID));
$this->assertEquals('1', $request->getPost(CONTROL_CHARACTERS));
$this->assertEquals('1', $request->post['array'][INVALID]);
$this->assertEquals(INVALID, $request->getCookie('invalid'));
$this->assertEquals(CONTROL_CHARACTERS, $request->getCookie('control'));
$this->assertEquals('1', $request->getCookie(INVALID));
$this->assertEquals('1', $request->getCookie(CONTROL_CHARACTERS));
$this->assertEquals('1', $request->cookies['array'][INVALID]);
$this->assertType('HttpUploadedFile', $request->getFile(INVALID));
$this->assertType('HttpUploadedFile', $request->getFile(CONTROL_CHARACTERS));
$this->assertType('HttpUploadedFile', $request->files['file1']);
// filter data
$request->setEncoding('UTF-8');
$this->assertEquals("vž", $request->getQuery('invalid'));
$this->assertEquals('ABC', $request->getQuery('control'));
$this->assertNull($request->getQuery(INVALID));
$this->assertNull($request->getQuery(CONTROL_CHARACTERS));
$this->assertFalse(isset($request->query['array'][INVALID]));
$this->assertEquals("vž", $request->getPost('invalid'));
$this->assertEquals('ABC', $request->getPost('control'));
$this->assertNull($request->getPost(INVALID));
$this->assertNull($request->getPost(CONTROL_CHARACTERS));
$this->assertFalse(isset($request->post['array'][INVALID]));
$this->assertEquals("vž", $request->getCookie('invalid'));
$this->assertEquals('ABC', $request->getCookie('control'));
$this->assertNull($request->getCookie(INVALID));
$this->assertNull($request->getCookie(CONTROL_CHARACTERS));
$this->assertFalse(isset($request->cookies['array'][INVALID]));
$this->assertNull($request->getFile(INVALID));
$this->assertNull($request->getFile(CONTROL_CHARACTERS));
$this->assertType('HttpUploadedFile', $request->files['file1']);
$this->assertEquals("vž", $request->files['file1']->name);
}
示例3: chooseAction
public function chooseAction(HttpRequest $request)
{
$action = Primitive::choice('action')->setList($this->methodMap);
if ($this->getDefaultAction()) {
$action->setDefault($this->getDefaultAction());
}
Form::create()->add($action)->import($request->getGet())->importMore($request->getPost())->importMore($request->getAttached());
if (!($command = $action->getValue())) {
return $action->getDefault();
}
return $command;
}
示例4: handleRequest
public function handleRequest(HttpRequest $request)
{
$form = Form::create()->add(Primitive::string('username')->setMax(64)->required())->add(Primitive::string('password')->addImportFilter(Filter::hash())->required())->import($request->getPost());
if (!$form->getErrors()) {
try {
$admin = Administrator::dao()->logIn($form->getValue('username'), $form->getValue('password'));
} catch (ObjectNotFoundException $e) {
// failed to log in
return ModelAndView::create()->setView('error');
}
if (!Session::isStarted()) {
Session::start();
}
Session::assign(Administrator::LABEL, $admin);
return ModelAndView::create()->setView(new RedirectToView('main'));
}
return ModelAndView::create()->setView('login');
}
示例5: getPostFields
private function getPostFields(HttpRequest $request)
{
if ($request->hasBody()) {
return $request->getBody();
} else {
if ($this->oldUrlConstructor) {
return UrlParamsUtils::toStringOneDeepLvl($request->getPost());
} else {
$fileList = array_map(array($this, 'fileFilter'), UrlParamsUtils::toParamsList($request->getFiles()));
if (empty($fileList)) {
return UrlParamsUtils::toString($request->getPost());
} else {
$postList = UrlParamsUtils::toParamsList($request->getPost());
if (!is_null($atParam = $this->findAtParamInPost($postList))) {
throw new NetworkException('Security excepion: not allowed send post param ' . $atParam . ' which begins from @ in request which contains files');
}
return array_merge($postList, $fileList);
}
}
}
}
示例6: makeHandle
protected function makeHandle(HttpRequest $request, CurlHttpResponse $response)
{
$handle = curl_init();
Assert::isNotNull($request->getMethod());
$options = array(CURLOPT_WRITEFUNCTION => array($response, 'writeBody'), CURLOPT_HEADERFUNCTION => array($response, 'writeHeader'), CURLOPT_URL => $request->getUrl()->toString(), CURLOPT_USERAGENT => 'onPHP::' . __CLASS__);
if ($this->noBody !== null) {
$options[CURLOPT_NOBODY] = $this->noBody;
}
if ($this->followLocation !== null) {
$options[CURLOPT_FOLLOWLOCATION] = $this->followLocation;
}
switch ($request->getMethod()->getId()) {
case HttpMethod::GET:
$options[CURLOPT_HTTPGET] = true;
if ($request->getGet()) {
$options[CURLOPT_URL] .= ($request->getUrl()->getQuery() ? '&' : '?') . $this->argumentsToString($request->getGet());
}
break;
case HttpMethod::POST:
$options[CURLOPT_POST] = true;
$options[CURLOPT_POSTFIELDS] = $this->argumentsToString($request->getPost());
break;
default:
$options[CURLOPT_CUSTOMREQUEST] = $request->getMethod()->getName();
break;
}
$headers = array();
foreach ($request->getHeaderList() as $headerName => $headerValue) {
$headers[] = "{$headerName}: {$headerValue}";
}
if ($headers) {
$options[CURLOPT_HTTPHEADER] = $headers;
}
if ($request->getCookie()) {
$cookies = array();
foreach ($request->getCookie() as $name => $value) {
$cookies[] = $name . '=' . urlencode($value);
}
$options[CURLOPT_COOKIE] = implode('; ', $cookies);
}
foreach ($this->options as $key => $value) {
$options[$key] = $value;
}
curl_setopt_array($handle, $options);
return $handle;
}