本文整理汇总了PHP中Slim\Http\Response::status方法的典型用法代码示例。如果您正苦于以下问题:PHP Response::status方法的具体用法?PHP Response::status怎么用?PHP Response::status使用的例子?那么恭喜您, 这里精选的方法代码示例或许可以为您提供帮助。您也可以进一步了解该方法所在类Slim\Http\Response
的用法示例。
在下文中一共展示了Response::status方法的6个代码示例,这些例子默认根据受欢迎程度排序。您可以为喜欢或者感觉有用的代码点赞,您的评价将有助于系统推荐出更棒的PHP代码示例。
示例1: redirect
/**
* @param int $statusCode
* @param string $urlPath
*/
public function redirect($statusCode, $urlPath)
{
$urlPath = ltrim($urlPath, '/');
$baseUrl = $this->scheme . '://' . $this->host . '/' . $urlPath;
$this->response->status($statusCode);
$this->response->header('Location', $baseUrl);
}
示例2: put
public function put($id)
{
$data = $this->getPayload();
$id_key = $this->model->getId();
$id_schema = $this->model->getSchema($id_key);
if ($id_schema['type'] == 'id' && !$id instanceof \MongoId) {
$id = new \MongoId($id);
}
$data[$id_key] = $id;
try {
$this->model->save($data);
} catch (ValidationException $e) {
$status = 400;
$this->badRequest($e->getMessage(), $status);
} catch (InvalidException $e) {
$status = 405;
// Method Not Allowed
$this->badRequest($e->getMessage(), $status);
}
try {
// The Deal instance already has all our settings. So, let's use
// that instance to get them and inform the queue about them,
// Then he use it to create connections/channels to the queue. He can
// also pass along that config to workers who can then create their
// own db connections which are needed for models, etc.
$queue = new Queue($this->app->settings());
$queue->push(get_class($this->model), $id, 'put');
} catch (ValidationException $e) {
$status = 400;
$this->badRequest($e->getMessage(), $status);
}
$this->response->status(201);
return $this->getSingular((string) $id);
}
示例3: __invoke
/**
* @param \swoole_http_request $request
* @param \swoole_http_response $response
* @throws \Exception
*/
public function __invoke($request, $response)
{
$this->app->getContainer()['environment'] = $this->app->getContainer()->factory(function () {
return new Environment($_SERVER);
});
$this->app->getContainer()['request'] = $this->app->getContainer()->factory(function ($container) {
return Request::createFromEnvironment($container['environment']);
});
$this->app->getContainer()['response'] = $this->app->getContainer()->factory(function ($container) {
$headers = new Headers(['Content-Type' => 'text/html']);
$response = new Response(200, $headers);
return $response->withProtocolVersion($container->get('settings')['httpVersion']);
});
/**
* @var ResponseInterface $appResponse
*/
$appResponse = $this->app->run(true);
// set http header
foreach ($appResponse->getHeaders() as $key => $value) {
$filter_header = function ($header) {
$filtered = str_replace('-', ' ', $header);
$filtered = ucwords($filtered);
return str_replace(' ', '-', $filtered);
};
$name = $filter_header($key);
foreach ($value as $v) {
$response->header($name, $v);
}
}
// set http status
$response->status($appResponse->getStatusCode());
// send response to browser
if (!$this->isEmptyResponse($appResponse)) {
$body = $appResponse->getBody();
if ($body->isSeekable()) {
$body->rewind();
}
$settings = $this->app->getContainer()->get('settings');
$chunkSize = $settings['responseChunkSize'];
$contentLength = $appResponse->getHeaderLine('Content-Length');
if (!$contentLength) {
$contentLength = $body->getSize();
}
$totalChunks = ceil($contentLength / $chunkSize);
$lastChunkSize = $contentLength % $chunkSize;
$currentChunk = 0;
while (!$body->eof() && $currentChunk < $totalChunks) {
if (++$currentChunk == $totalChunks && $lastChunkSize > 0) {
$chunkSize = $lastChunkSize;
}
$response->write($body->read($chunkSize));
if (connection_status() != CONNECTION_NORMAL) {
break;
}
}
$response->end();
}
}
示例4: toJson
/**
* @param int $code
* @param array $data
*/
private function toJson($code, $data)
{
$this->response->header('Content-Type', 'application/json');
$this->response->status($code);
if (defined('JSON_PRETTY_PRINT')) {
$this->response->body(json_encode($data, JSON_PRETTY_PRINT));
} else {
$this->response->body(json_encode($data));
}
}
示例5: status
/**
* Set the HTTP response status code
* @param int $status The HTTP response status code
*/
public function status($code)
{
$this->response->status($code);
}
示例6: writeToJSON
/**
* convert array to json and parsing to body
* @param $message
* @param int $statusCode
*/
protected function writeToJSON($message, $statusCode = 200)
{
$this->response->status($statusCode);
$this->response['Content-Type'] = 'application/json';
$this->response->body(json_encode($message));
}