Class Response
This is a simple abstraction over top an HTTP response. This provides methods to set the HTTP status, the HTTP headers, and the HTTP body.
$response = new Docolight\Http\Response(new Docolight\Http\Headers(array('Content-Type' => 'text/html'))); // Or you can resolve via factory // $response = with(new Docolight\Http\ResponseFactory())->produce(); // Move even shorter way // $response = container('response')->produce(); // Set your header $response->headers->set('Foo', 'Bar'); // Set your response status $response->setStatus(202); // Set your response body $response->setBody('PUT YOUR HTML HERE'); // Send your response to client $response->send(); // In shorter way // response( // 'base', // 200, // 'PUT YOUR HTML HERE', // array('Foo' => 'Bar') // )->send();
- CApplicationComponent
- Docolight\Http\Response implements ArrayAccess
Direct known subclasses
Indirect known subclasses
Namespace: Docolight\Http
Author: Krisan Alfa Timur krisanalfa@docotel.co.id
Located at Docolight/Http/Response.php
Author: Krisan Alfa Timur krisanalfa@docotel.co.id
Located at Docolight/Http/Response.php
Methods summary
public
|
|
public
integer
|
|
public
|
|
public
string
|
|
public
|
|
public
|
|
public
integer
|
|
public
array[int
|
|
public
|
|
protected
|
|
protected
|
#
prepareHeaders( integer $status,
Prepare headers before we send them |
public
|
|
public
boolean
|
|
public
mixed
|
|
public
|
|
public
|
|
public static
string|null
|
|
public static
|
|
public
|
|
protected
mixed
|
Properties summary
protected
integer
|
$status
HTTP status code |
#
200
|
public
|
$headers
|
#
null
|
protected
string
|
$body
HTTP response body |
#
''
|
protected
integer
|
$length
Length of HTTP response body |
#
0
|
protected static
array
|
$messages
HTTP response codes and messages |
#
array(
// Informational 1xx
100 => '100 Continue',
101 => '101 Switching Protocols',
102 => '102 Processing',
// Successful 2xx
200 => '200 OK',
201 => '201 Created',
202 => '202 Accepted',
203 => '203 Non-Authoritative Information',
204 => '204 No Content',
205 => '205 Reset Content',
206 => '206 Partial Content',
207 => '207 Multi-Status',
208 => '208 Already Reported',
226 => '226 IM Used',
// Redirection 3xx
300 => '300 Multiple Choices',
301 => '301 Moved Permanently',
302 => '302 Found',
303 => '303 See Other',
304 => '304 Not Modified',
305 => '305 Use Proxy',
306 => '306 (Unused)',
307 => '307 Temporary Redirect',
308 => '308 Permanent Redirect',
// Client Error 4xx
400 => '400 Bad Request',
401 => '401 Unauthorized',
402 => '402 Payment Required',
403 => '403 Forbidden',
404 => '404 Not Found',
405 => '405 Method Not Allowed',
406 => '406 Not Acceptable',
407 => '407 Proxy Authentication Required',
408 => '408 Request Timeout',
409 => '409 Conflict',
410 => '410 Gone',
411 => '411 Length Required',
412 => '412 Precondition Failed',
413 => '413 Request Entity Too Large',
414 => '414 Request-URI Too Long',
415 => '415 Unsupported Media Type',
416 => '416 Requested Range Not Satisfiable',
417 => '417 Expectation Failed',
418 => '418 I\'m a teapot',
419 => '419 Authentication Timeout',
420 => '420 Method Failure',
421 => '421 Misdirected Request',
422 => '422 Unprocessable Entity',
423 => '423 Locked',
424 => '424 Failed Dependency',
426 => '426 Upgrade Required',
428 => '428 Precondition Required',
429 => '429 Too Many Requests',
431 => '431 Request Header Fields Too Large',
451 => '451 Unavailable For Legal Reasons',
// Server Error 5xx
500 => '500 Internal Server Error',
501 => '501 Not Implemented',
502 => '502 Bad Gateway',
503 => '503 Service Unavailable',
504 => '504 Gateway Timeout',
505 => '505 HTTP Version Not Supported',
506 => '506 Variant Also Negotiates',
507 => '507 Insufficient Storage',
508 => '508 Loop Detected',
509 => '509 Bandwidth Limit Exceeded',
510 => '510 Not Extended',
511 => '511 Network Authentication Required',
520 => '520 Unknown Error',
598 => '598 Network Read Timeout Error',
599 => '599 Network Connect Timeout Error',
)
|