Skip to content

Phalcon http

NOTE

All classes are prefixed with Phalcon

Http\Cookie

Class Source on GitHub

Provide OO wrappers to manage a HTTP cookie.

Uses Phalcon\Di\AbstractInjectionAware · Phalcon\Di\DiInterface · Phalcon\Encryption\Crypt\CryptInterface · Phalcon\Filter\FilterInterface · Phalcon\Http\Cookie\CookieInterface · Phalcon\Http\Cookie\Exception · Phalcon\Http\Cookie\Exceptions\CookieKeyTooShort · Phalcon\Http\Cookie\Exceptions\CryptInterfaceRequired · Phalcon\Http\Cookie\Exceptions\CryptServiceUnavailable · Phalcon\Http\Cookie\Exceptions\FilterServiceUnavailable · Phalcon\Http\Response\Exception · Phalcon\Session\ManagerInterface

Method Summary

public __construct(string $name,mixed $value = null,int $expire = 0,string $path = "/",bool $secure = false,string $domain = "",bool $httpOnly = false,array $options = []) Phalcon\Http\Cookie constructor. public string __toString() Magic __toString method converts the cookie's value to string public delete() Deletes the cookie by setting an expire time in the past public string getDomain() Returns the domain that the cookie is available to public int getExpiration() Returns the current expiration time public bool getHttpOnly() Returns if the cookie is accessible only through the HTTP protocol public string getName() Returns the current cookie's name public array getOptions() Returns the current cookie's options public string getPath() Returns the current cookie's path public bool getSecure() Returns whether the cookie must only be sent when the connection is public mixed getValue(mixed $filters = null,mixed $defaultValue = null) Returns the cookie's value. public bool isUsingEncryption() Check if the cookie is using implicit encryption public CookieInterface restore() Reads the cookie-related info from the SESSION to restore the cookie as public CookieInterface send() Sends the cookie to the HTTP client. public CookieInterface setDomain( string $domain ) Sets the domain that the cookie is available to public CookieInterface setExpiration( int $expire ) Sets the cookie's expiration time public CookieInterface setHttpOnly( bool $httpOnly ) Sets if the cookie is accessible only through the HTTP protocol public CookieInterface setOptions( array $options ) Sets the cookie's options public CookieInterface setPath( string $path ) Sets the cookie's path public CookieInterface setSecure( bool $secure ) Sets if the cookie must only be sent when the connection is secure (HTTPS) public CookieInterface setSignKey( string $signKey = null ) Sets the cookie's sign key. public CookieInterface setValue( mixed $value ) Sets the cookie's value public CookieInterface useEncryption( bool $useEncryption ) Sets if the cookie must be encrypted/decrypted automatically protected void assertSignKeyIsLongEnough( string $signKey ) Assert the cookie's key is enough long.

Properties

protected string $domain
protected int $expire
protected FilterInterface|null $filter = null
protected bool $httpOnly
protected bool $isRead = false
protected bool $isRestored = false
protected string $name
protected array $options = []
protected string $path
protected bool $secure = true
protected string|null $signKey = null The cookie's sign key.
protected bool $useEncryption = false
protected mixed|null $value = null

Methods

Public · 23

__construct()

public function __construct(
    string $name,
    mixed $value = null,
    int $expire = 0,
    string $path = "/",
    bool $secure = false,
    string $domain = "",
    bool $httpOnly = false,
    array $options = []
);

Phalcon\Http\Cookie constructor.

__toString()

public function __toString(): string;

Magic __toString method converts the cookie's value to string

delete()

public function delete();

Deletes the cookie by setting an expire time in the past

getDomain()

public function getDomain(): string;

Returns the domain that the cookie is available to

getExpiration()

public function getExpiration(): int;

Returns the current expiration time

getHttpOnly()

public function getHttpOnly(): bool;

Returns if the cookie is accessible only through the HTTP protocol

getName()

public function getName(): string;

Returns the current cookie's name

getOptions()

public function getOptions(): array;

Returns the current cookie's options

getPath()

public function getPath(): string;

Returns the current cookie's path

getSecure()

public function getSecure(): bool;

Returns whether the cookie must only be sent when the connection is secure (HTTPS)

getValue()

public function getValue(
    mixed $filters = null,
    mixed $defaultValue = null
): mixed;

Returns the cookie's value.

isUsingEncryption()

public function isUsingEncryption(): bool;

Check if the cookie is using implicit encryption

restore()

public function restore(): CookieInterface;

Reads the cookie-related info from the SESSION to restore the cookie as it was set.

This method is automatically called internally so normally you don't need to call it.

send()

public function send(): CookieInterface;

Sends the cookie to the HTTP client.

Stores the cookie definition in session.

setDomain()

public function setDomain( string $domain ): CookieInterface;

Sets the domain that the cookie is available to

setExpiration()

public function setExpiration( int $expire ): CookieInterface;

Sets the cookie's expiration time

setHttpOnly()

public function setHttpOnly( bool $httpOnly ): CookieInterface;

Sets if the cookie is accessible only through the HTTP protocol

setOptions()

public function setOptions( array $options ): CookieInterface;

Sets the cookie's options

setPath()

public function setPath( string $path ): CookieInterface;

Sets the cookie's path

setSecure()

public function setSecure( bool $secure ): CookieInterface;

Sets if the cookie must only be sent when the connection is secure (HTTPS)

setSignKey()

public function setSignKey( string $signKey = null ): CookieInterface;

Sets the cookie's sign key.

The `$signKey' MUST be at least 32 characters long and generated using a cryptographically secure pseudo random generator.

Use NULL to disable cookie signing.

@see \Phalcon\Encryption\Security\Random

setValue()

public function setValue( mixed $value ): CookieInterface;

Sets the cookie's value

useEncryption()

public function useEncryption( bool $useEncryption ): CookieInterface;

Sets if the cookie must be encrypted/decrypted automatically

Protected · 1

assertSignKeyIsLongEnough()

protected function assertSignKeyIsLongEnough( string $signKey ): void;

Assert the cookie's key is enough long.

Http\Cookie\CookieInterface

Interface Source on GitHub

Interface for Phalcon\Http\Cookie

  • Phalcon\Http\Cookie\CookieInterface

Method Summary

public delete() Deletes the cookie public string getDomain() Returns the domain that the cookie is available to public int getExpiration() Returns the current expiration time public bool getHttpOnly() Returns if the cookie is accessible only through the HTTP protocol public string getName() Returns the current cookie's name public array getOptions() Returns the current cookie's options public string getPath() Returns the current cookie's path public bool getSecure() Returns whether the cookie must only be sent when the connection is public mixed getValue(mixed $filters = null,mixed $defaultValue = null) Returns the cookie's value. public bool isUsingEncryption() Check if the cookie is using implicit encryption public CookieInterface send() Sends the cookie to the HTTP client public CookieInterface setDomain( string $domain ) Sets the domain that the cookie is available to public CookieInterface setExpiration( int $expire ) Sets the cookie's expiration time public CookieInterface setHttpOnly( bool $httpOnly ) Sets if the cookie is accessible only through the HTTP protocol public CookieInterface setOptions( array $options ) Sets the cookie's options public CookieInterface setPath( string $path ) Sets the cookie's expiration time public CookieInterface setSecure( bool $secure ) Sets if the cookie must only be sent when the connection is secure public CookieInterface setValue( mixed $value ) Sets the cookie's value public CookieInterface useEncryption( bool $useEncryption ) Sets if the cookie must be encrypted/decrypted automatically

Methods

Public · 19

delete()

public function delete();

Deletes the cookie

getDomain()

public function getDomain(): string;

Returns the domain that the cookie is available to

getExpiration()

public function getExpiration(): int;

Returns the current expiration time

getHttpOnly()

public function getHttpOnly(): bool;

Returns if the cookie is accessible only through the HTTP protocol

getName()

public function getName(): string;

Returns the current cookie's name

getOptions()

public function getOptions(): array;

Returns the current cookie's options

getPath()

public function getPath(): string;

Returns the current cookie's path

getSecure()

public function getSecure(): bool;

Returns whether the cookie must only be sent when the connection is secure (HTTPS)

getValue()

public function getValue(
    mixed $filters = null,
    mixed $defaultValue = null
): mixed;

Returns the cookie's value.

isUsingEncryption()

public function isUsingEncryption(): bool;

Check if the cookie is using implicit encryption

send()

public function send(): CookieInterface;

Sends the cookie to the HTTP client

setDomain()

public function setDomain( string $domain ): CookieInterface;

Sets the domain that the cookie is available to

setExpiration()

public function setExpiration( int $expire ): CookieInterface;

Sets the cookie's expiration time

setHttpOnly()

public function setHttpOnly( bool $httpOnly ): CookieInterface;

Sets if the cookie is accessible only through the HTTP protocol

setOptions()

public function setOptions( array $options ): CookieInterface;

Sets the cookie's options

setPath()

public function setPath( string $path ): CookieInterface;

Sets the cookie's expiration time

setSecure()

public function setSecure( bool $secure ): CookieInterface;

Sets if the cookie must only be sent when the connection is secure (HTTPS)

setValue()

public function setValue( mixed $value ): CookieInterface;

Sets the cookie's value

useEncryption()

public function useEncryption( bool $useEncryption ): CookieInterface;

Sets if the cookie must be encrypted/decrypted automatically

Http\Cookie\Exception

Class Source on GitHub

Phalcon\Http\Cookie\Exception

Exceptions thrown in Phalcon\Http\Cookie will use this class.

Http\Cookie\Exceptions\CookieKeyTooShort

Class Source on GitHub

Uses Phalcon\Http\Cookie\Exception

Method Summary

Methods

Public · 1

__construct()

public function __construct( int $length );

Http\Cookie\Exceptions\CryptInterfaceRequired

Class Source on GitHub

Uses Phalcon\Http\Cookie\Exception

Method Summary

Methods

Public · 1

__construct()

public function __construct();

Http\Cookie\Exceptions\CryptServiceUnavailable

Class Source on GitHub

Uses Phalcon\Http\Cookie\Exception

Method Summary

Methods

Public · 1

__construct()

public function __construct();

Http\Cookie\Exceptions\FilterServiceUnavailable

Class Source on GitHub

Uses Phalcon\Http\Cookie\Exception

Method Summary

Methods

Public · 1

__construct()

public function __construct();

Http\Message\RequestMethodInterface

Interface Source on GitHub

Interface for Request methods

Implementation of this file has been influenced by PHP FIG @link https://github.com/php-fig/http-message-util/ @license https://github.com/php-fig/http-message-util/blob/master/LICENSE

  • Phalcon\Http\Message\RequestMethodInterface

Constants

string METHOD_CONNECT = "CONNECT"
string METHOD_DELETE = "DELETE"
string METHOD_GET = "GET"
string METHOD_HEAD = "HEAD"
string METHOD_OPTIONS = "OPTIONS"
string METHOD_PATCH = "PATCH"
string METHOD_POST = "POST"
string METHOD_PURGE = "PURGE"
string METHOD_PUT = "PUT"
string METHOD_TRACE = "TRACE"

Http\Message\ResponseStatusCodeInterface

Interface Source on GitHub

Interface for Request methods

Implementation of this file has been influenced by PHP FIG @link https://github.com/php-fig/http-message-util/ @license https://github.com/php-fig/http-message-util/blob/master/LICENSE

Defines constants for common HTTP status code.

@see https://tools.ietf.org/html/rfc2295#section-8.1 @see https://tools.ietf.org/html/rfc2324#section-2.3 @see https://tools.ietf.org/html/rfc2518#section-9.7 @see https://tools.ietf.org/html/rfc2774#section-7 @see https://tools.ietf.org/html/rfc3229#section-10.4 @see https://tools.ietf.org/html/rfc4918#section-11 @see https://tools.ietf.org/html/rfc5842#section-7.1 @see https://tools.ietf.org/html/rfc5842#section-7.2 @see https://tools.ietf.org/html/rfc6585#section-3 @see https://tools.ietf.org/html/rfc6585#section-4 @see https://tools.ietf.org/html/rfc6585#section-5 @see https://tools.ietf.org/html/rfc6585#section-6 @see https://tools.ietf.org/html/rfc7231#section-6 @see https://tools.ietf.org/html/rfc7238#section-3 @see https://tools.ietf.org/html/rfc7725#section-3 @see https://tools.ietf.org/html/rfc7540#section-9.1.2 @see https://tools.ietf.org/html/rfc8297#section-2 @see https://tools.ietf.org/html/rfc8470#section-7

  • Phalcon\Http\Message\ResponseStatusCodeInterface

Constants

int STATUS_ACCEPTED = 202
int STATUS_ALREADY_REPORTED = 208
int STATUS_BAD_GATEWAY = 502
int STATUS_BAD_REQUEST = 400
int STATUS_BANDWIDTH_LIMIT_EXCEEDED = 509
int STATUS_BLOCKED_BY_WINDOWS_PARENTAL_CONTROLS = 450
int STATUS_CLIENT_CLOSED_REQUEST = 499
int STATUS_CONFLICT = 409
int STATUS_CONNECTION_TIMEOUT = 522
int STATUS_CONTINUE = 100
int STATUS_CREATED = 201
int STATUS_EARLY_HINTS = 103
int STATUS_EXPECTATION_FAILED = 417
int STATUS_FAILED_DEPENDENCY = 424
int STATUS_FORBIDDEN = 403
int STATUS_FOUND = 302
int STATUS_GATEWAY_TIMEOUT = 504
int STATUS_GONE = 410
int STATUS_HTTP_REQUEST_SENT_TO_HTTPS_PORT = 497
int STATUS_IM_A_TEAPOT = 418
int STATUS_IM_USED = 226
int STATUS_INSUFFICIENT_STORAGE = 507
int STATUS_INTERNAL_SERVER_ERROR = 500
int STATUS_INVALID_SSL_CERTIFICATE = 526
int STATUS_INVALID_TOKEN_ESRI = 498
int STATUS_LENGTH_REQUIRED = 411
int STATUS_LOCKED = 423
int STATUS_LOGIN_TIMEOUT = 440
int STATUS_LOOP_DETECTED = 508
int STATUS_METHOD_FAILURE = 420
int STATUS_METHOD_NOT_ALLOWED = 405
int STATUS_MISDIRECTED_REQUEST = 421
int STATUS_MOVED_PERMANENTLY = 301
int STATUS_MULTIPLE_CHOICES = 300
int STATUS_MULTI_STATUS = 207
int STATUS_NETWORK_AUTHENTICATION_REQUIRED = 511
int STATUS_NETWORK_CONNECT_TIMEOUT_ERROR = 599
int STATUS_NETWORK_READ_TIMEOUT_ERROR = 598
int STATUS_NON_AUTHORITATIVE_INFORMATION = 203
int STATUS_NOT_ACCEPTABLE = 406
int STATUS_NOT_EXTENDED = 510
int STATUS_NOT_FOUND = 404
int STATUS_NOT_IMPLEMENTED = 501
int STATUS_NOT_MODIFIED = 304
int STATUS_NO_CONTENT = 204
int STATUS_NO_RESPONSE = 444
int STATUS_OK = 200
int STATUS_ORIGIN_DNS_ERROR = 530
int STATUS_ORIGIN_IS_UNREACHABLE = 523
int STATUS_PAGE_EXPIRED = 419
int STATUS_PARTIAL_CONTENT = 206
int STATUS_PAYLOAD_TOO_LARGE = 413
int STATUS_PAYMENT_REQUIRED = 402
int STATUS_PERMANENT_REDIRECT = 308
int STATUS_PRECONDITION_FAILED = 412
int STATUS_PRECONDITION_REQUIRED = 428
int STATUS_PROCESSING = 102
int STATUS_PROXY_AUTHENTICATION_REQUIRED = 407
int STATUS_RAILGUN_ERROR = 527
int STATUS_RANGE_NOT_SATISFIABLE = 416
int STATUS_REQUEST_HEADER_FIELDS_TOO_LARGE = 431
int STATUS_REQUEST_HEADER_TOO_LARGE = 494
int STATUS_REQUEST_TIMEOUT = 408
int STATUS_RESERVED = 306
int STATUS_RESET_CONTENT = 205
int STATUS_RETRY_WITH = 449
int STATUS_SEE_OTHER = 303
int STATUS_SERVICE_UNAVAILABLE = 503
int STATUS_SSL_CERTIFICATE_ERROR = 495
int STATUS_SSL_CERTIFICATE_REQUIRED = 496
int STATUS_SSL_HANDSHAKE_FAILED = 525
int STATUS_SWITCHING_PROTOCOLS = 101
int STATUS_TEMPORARY_REDIRECT = 307
int STATUS_THIS_IS_FINE = 218
int STATUS_TIMEOUT_OCCURRED = 524
int STATUS_TOO_EARLY = 425
int STATUS_TOO_MANY_REQUESTS = 429
int STATUS_UNAUTHORIZED = 401
int STATUS_UNAVAILABLE_FOR_LEGAL_REASONS = 451
int STATUS_UNKNOWN_ERROR = 520
int STATUS_UNPROCESSABLE_ENTITY = 422
int STATUS_UNSUPPORTED_MEDIA_TYPE = 415
int STATUS_UPGRADE_REQUIRED = 426
int STATUS_URI_TOO_LONG = 414
int STATUS_USE_PROXY = 305
int STATUS_VARIANT_ALSO_NEGOTIATES = 506
int STATUS_VERSION_NOT_SUPPORTED = 505
int STATUS_WEB_SERVER_IS_DOWN = 521

Http\Request

Class Source on GitHub

Encapsulates request information for easy and secure access from application controllers.

The request object is a simple value object that is passed between the dispatcher and controller classes. It packages the HTTP request environment.

use Phalcon\Http\Request;

$request = new Request();

if ($request->isPost() && $request->isAjax()) {
    echo "Request was made using POST and AJAX";
}

// Retrieve SERVER variables
$request->getServer("HTTP_HOST");

// GET, POST, PUT, DELETE, HEAD, OPTIONS, PATCH, PURGE, TRACE, CONNECT
$request->getMethod();

// An array of languages the client accepts
$request->getLanguages();

Uses Phalcon\Di\AbstractInjectionAware · Phalcon\Di\DiInterface · Phalcon\Events\ManagerInterface · Phalcon\Filter\FilterInterface · Phalcon\Http\Message\RequestMethodInterface · Phalcon\Http\Request\Exception · Phalcon\Http\Request\Exceptions\FilterServiceUnavailable · Phalcon\Http\Request\Exceptions\InvalidHost · Phalcon\Http\Request\Exceptions\InvalidHttpMethod · Phalcon\Http\Request\Exceptions\MissingFilters · Phalcon\Http\Request\Exceptions\SanitizerNotFound · Phalcon\Http\Request\File · Phalcon\Http\Request\FileInterface · Phalcon\Support\Helper\Json\Decode · stdClass

Method Summary

public mixed get(string $name = null,mixed $filters = null,mixed $defaultValue = null,bool $notAllowEmpty = false,bool $noRecursive = false) Gets a variable from the $_REQUEST superglobal applying filters if public array getAcceptableContent() Gets an array with mime/types and their quality accepted by the public array|null getBasicAuth() Gets auth info accepted by the browser/client from public string getBestAccept() Gets best mime/type accepted by the browser/client from public string getBestCharset() Gets best charset accepted by the browser/client from public string getBestLanguage() Gets best language accepted by the browser/client from public string|bool getClientAddress( bool $trustForwardedHeader = false ) Gets most possible client IP Address. This method searches in public array getClientCharsets() Gets a charsets array and their quality accepted by the browser/client public string|null getContentType() Gets content type which request has been made public array getDigestAuth() Gets auth info accepted by the browser/client from public mixed getFilteredData(string $methodKey,string $method,string $name = null,mixed $defaultValue = null,bool $notAllowEmpty = false,bool $noRecursive = false) Gets filtered data public mixed getFilteredPatch(string $name = null,mixed $defaultValue = null,bool $notAllowEmpty = false,bool $noRecursive = false) Retrieves a patch value always sanitized with the preset filters public mixed getFilteredPost(string $name = null,mixed $defaultValue = null,bool $notAllowEmpty = false,bool $noRecursive = false) Retrieves a post value always sanitized with the preset filters public mixed getFilteredPut(string $name = null,mixed $defaultValue = null,bool $notAllowEmpty = false,bool $noRecursive = false) Retrieves a put value always sanitized with the preset filters public mixed getFilteredQuery(string $name = null,mixed $defaultValue = null,bool $notAllowEmpty = false,bool $noRecursive = false) Retrieves a query/get value always sanitized with the preset filters public string getHTTPReferer() Gets web page that refers active request. ie: http://www.google.com public string getHeader( string $header ) Gets HTTP header from request data public array getHeaders() Returns the available headers in the request public string getHttpHost() Gets host name used by the request. public bool getHttpMethodParameterOverride() Return the HTTP method parameter override flag public \stdClass|array|bool getJsonRawBody( bool $associative = false ) Gets decoded JSON HTTP raw request body public array getLanguages() Gets languages array and their quality accepted by the browser/client public string getMethod() Gets HTTP method which request has been made public mixed getPatch(string $name = null,mixed $filters = null,mixed $defaultValue = null,bool $notAllowEmpty = false,bool $noRecursive = false) Gets a variable from put request public int getPort() Gets information about the port on which the request is made. public mixed getPost(string $name = null,mixed $filters = null,mixed $defaultValue = null,bool $notAllowEmpty = false,bool $noRecursive = false) Gets a variable from the $_POST superglobal applying filters if needed public string getPreferredIsoLocaleVariant() Gets the preferred ISO locale variant. public mixed getPut(string $name = null,mixed $filters = null,mixed $defaultValue = null,bool $notAllowEmpty = false,bool $noRecursive = false) Gets a variable from the PUT request public mixed getQuery(string $name = null,mixed $filters = null,mixed $defaultValue = null,bool $notAllowEmpty = false,bool $noRecursive = false) Gets variable from $_GET superglobal applying filters if needed public string getRawBody() Gets HTTP raw request body public string getScheme() Gets HTTP schema (http/https) public string|null getServer( string $name ) Gets variable from $_SERVER superglobal public string getServerAddress() Gets active server address IP public string getServerName() Gets active server name public string getURI( bool $onlyPath = false ) Gets HTTP URI which request has been made to public FileInterface[] getUploadedFiles(bool $onlySuccessful = false,bool $namedKeys = false) Gets attached files as Phalcon\Http\Request\File instances public string getUserAgent() Gets HTTP user agent used to made the request public bool has( string $name ) Checks whether $_REQUEST superglobal has certain index public bool hasFiles() Returns if the request has files or not public bool hasHeader( string $header ) Checks whether headers has certain index public bool hasPatch( string $name ) Checks whether the PATCH data has certain index public bool hasPost( string $name ) Checks whether $_POST superglobal has certain index public bool hasPut( string $name ) Checks whether the PUT data has certain index public bool hasQuery( string $name ) Checks whether $_GET superglobal has certain index public bool hasServer( string $name ) Checks whether $_SERVER superglobal has certain index public bool isAjax() Checks whether request has been made using ajax public bool isConnect() Checks whether HTTP method is CONNECT. public bool isDelete() Checks whether HTTP method is DELETE. public bool isGet() Checks whether HTTP method is GET. public bool isHead() Checks whether HTTP method is HEAD. public bool isJson() Checks whether request content type contains json data public bool isMethod(mixed $methods,bool $strict = false) Check if HTTP method match any of the passed methods public bool isOptions() Checks whether HTTP method is OPTIONS. public bool isPatch() Checks whether HTTP method is PATCH. public bool isPost() Checks whether HTTP method is POST. public bool isPurge() Checks whether HTTP method is PURGE (Squid and Varnish support). public bool isPut() Checks whether HTTP method is PUT. public bool isSecure() Checks whether request has been made using any secure layer public bool isSoap() Checks whether request has been made using SOAP public bool isStrictHostCheck() Checks if the Request::getHttpHost method will be use strict validation public bool isTrace() Checks whether HTTP method is TRACE. public bool isValidHttpMethod( string $method ) Checks if a method is a valid HTTP method public long numFiles( bool $onlySuccessful = false ) Returns the number of files available public static setHttpMethodParameterOverride( bool $override ) Set the HTTP method parameter override flag public static setParameterFilters(string $name,array $filters = [],array $scope = []) Sets automatic sanitizers/filters for a particular field and for public static setStrictHostCheck( bool $flag = true ) Sets if the Request::getHttpHost method must be use strict validation public static setTrustedProxies( array $trustedProxies ) Set a trusted proxy list for X-Forwarded-For header public static setTrustedProxyHeader( string $trustedProxyHeader ) This header takes priority when parsing HTTP headers protected string getBestQuality(array $qualityParts,string $name) Process a request header and return the one with best quality protected mixed getHelper(array $source,string $name = null,mixed $filters = null,mixed $defaultValue = null,bool $notAllowEmpty = false,bool $noRecursive = false) Helper to get data from superglobals, applying filters if needed. protected array getQualityHeader(string $serverIndex,string $name) Process a request header and return an array of values with their qualities protected long hasFileHelper(mixed $data,bool $onlySuccessful) Recursively counts file in an array of files protected bool isIpAddressInCIDR(string $ip,string $cidr) Check if an IP address exists in CIDR range protected array resolveAuthorizationHeaders() Resolve authorization headers. protected array smoothFiles(array $names,array $types,array $tmp_names,array $sizes,array $errors,string $prefix) Smooth out $_FILES to have plain array with all files uploaded

Properties

protected FilterInterface|null $filterService = null
protected bool $methodOverride = false
protected array|null $postCache = null
protected array $queryFilters = []
protected string $rawBody = ""
protected bool $strictHostCheck = false
protected array $trustedProxies = []
protected string $trustedProxyHeader = ""

Methods

Public · 68

get()

public function get(
    string $name = null,
    mixed $filters = null,
    mixed $defaultValue = null,
    bool $notAllowEmpty = false,
    bool $noRecursive = false
): mixed;

Gets a variable from the $_REQUEST superglobal applying filters if needed. If no parameters are given the $_REQUEST superglobal is returned

// Returns value from $_REQUEST["user_email"] without sanitizing
$userEmail = $request->get("user_email");

// Returns value from $_REQUEST["user_email"] with sanitizing
$userEmail = $request->get("user_email", "email");

getAcceptableContent()

public function getAcceptableContent(): array;

Gets an array with mime/types and their quality accepted by the browser/client from _SERVER["HTTP_ACCEPT"]

getBasicAuth()

public function getBasicAuth(): array|null;

Gets auth info accepted by the browser/client from $_SERVER["PHP_AUTH_USER"]

getBestAccept()

public function getBestAccept(): string;

Gets best mime/type accepted by the browser/client from _SERVER["HTTP_ACCEPT"]

getBestCharset()

public function getBestCharset(): string;

Gets best charset accepted by the browser/client from _SERVER["HTTP_ACCEPT_CHARSET"]

getBestLanguage()

public function getBestLanguage(): string;

Gets best language accepted by the browser/client from _SERVER["HTTP_ACCEPT_LANGUAGE"]

getClientAddress()

public function getClientAddress( bool $trustForwardedHeader = false ): string|bool;

Gets most possible client IP Address. This method searches in $_SERVER["REMOTE_ADDR"] and optionally in $_SERVER["HTTP_X_FORWARDED_FOR"] and returns the first non-private or non-reserved IP address

The user provided trusted header takes priority before checking X-Forwarded-For header.

Using trusted proxies list, user has to provide a trusted list of proxy IPs

$request
    ->setTrustedProxies($trustedProxies)
    ->getClientAddress(true);
Using user provided trusted header, header should only ever contain 1 IP address, eg. HTTP_CLIENT_IP
$request
    ->setTrustedProxyHeader('HTTP_CLIENT_IP')
    ->setTrustedProxies($trustedProxies)
    ->getClientAddress(true);

getClientCharsets()

public function getClientCharsets(): array;

Gets a charsets array and their quality accepted by the browser/client from _SERVER["HTTP_ACCEPT_CHARSET"]

getContentType()

public function getContentType(): string|null;

Gets content type which request has been made

getDigestAuth()

public function getDigestAuth(): array;

Gets auth info accepted by the browser/client from $_SERVER["PHP_AUTH_DIGEST"]

getFilteredData()

public function getFilteredData(
    string $methodKey,
    string $method,
    string $name = null,
    mixed $defaultValue = null,
    bool $notAllowEmpty = false,
    bool $noRecursive = false
): mixed;

Gets filtered data

getFilteredPatch()

public function getFilteredPatch(
    string $name = null,
    mixed $defaultValue = null,
    bool $notAllowEmpty = false,
    bool $noRecursive = false
): mixed;

Retrieves a patch value always sanitized with the preset filters

getFilteredPost()

public function getFilteredPost(
    string $name = null,
    mixed $defaultValue = null,
    bool $notAllowEmpty = false,
    bool $noRecursive = false
): mixed;

Retrieves a post value always sanitized with the preset filters

getFilteredPut()

public function getFilteredPut(
    string $name = null,
    mixed $defaultValue = null,
    bool $notAllowEmpty = false,
    bool $noRecursive = false
): mixed;

Retrieves a put value always sanitized with the preset filters

getFilteredQuery()

public function getFilteredQuery(
    string $name = null,
    mixed $defaultValue = null,
    bool $notAllowEmpty = false,
    bool $noRecursive = false
): mixed;

Retrieves a query/get value always sanitized with the preset filters

getHTTPReferer()

public function getHTTPReferer(): string;

Gets web page that refers active request. ie: http://www.google.com

getHeader()

public function getHeader( string $header ): string;

Gets HTTP header from request data

getHeaders()

public function getHeaders(): array;

Returns the available headers in the request

$_SERVER = [ "PHP_AUTH_USER" => "phalcon", "PHP_AUTH_PW" => "secret", ];

$headers = $request->getHeaders();

echo $headers["Authorization"]; // Basic cGhhbGNvbjpzZWNyZXQ=

getHttpHost()

public function getHttpHost(): string;

Gets host name used by the request.

Request::getHttpHost trying to find host name in following order:

  • $_SERVER["HTTP_HOST"]
  • $_SERVER["SERVER_NAME"]
  • $_SERVER["SERVER_ADDR"]

Optionally Request::getHttpHost validates and clean host name. The Request::$strictHostCheck can be used to validate host name.

Note: validation and cleaning have a negative performance impact because they use regular expressions.

use Phalcon\Http\Request;

$request = new Request;

$_SERVER["HTTP_HOST"] = "example.com";
$request->getHttpHost(); // example.com

$_SERVER["HTTP_HOST"] = "example.com:8080";
$request->getHttpHost(); // example.com:8080

$request->setStrictHostCheck(true);
$_SERVER["HTTP_HOST"] = "ex=am~ple.com";
$request->getHttpHost(); // UnexpectedValueException

$_SERVER["HTTP_HOST"] = "ExAmPlE.com";
$request->getHttpHost(); // example.com

getHttpMethodParameterOverride()

public function getHttpMethodParameterOverride(): bool;

Return the HTTP method parameter override flag

getJsonRawBody()

public function getJsonRawBody( bool $associative = false ): \stdClass|array|bool;

Gets decoded JSON HTTP raw request body

getLanguages()

public function getLanguages(): array;

Gets languages array and their quality accepted by the browser/client from _SERVER["HTTP_ACCEPT_LANGUAGE"]

getMethod()

public function getMethod(): string;

Gets HTTP method which request has been made

If the X-HTTP-Method-Override header is set, and if the method is a POST, then it is used to determine the "real" intended HTTP method.

The _method request parameter can also be used to determine the HTTP method, but only if setHttpMethodParameterOverride(true) has been called.

The method is always an uppercased string.

getPatch()

public function getPatch(
    string $name = null,
    mixed $filters = null,
    mixed $defaultValue = null,
    bool $notAllowEmpty = false,
    bool $noRecursive = false
): mixed;

Gets a variable from put request

// Returns value from $_PATCH["user_email"] without sanitizing
$userEmail = $request->getPatch("user_email");

// Returns value from $_PATCH["user_email"] with sanitizing
$userEmail = $request->getPatch("user_email", "email");

getPort()

public function getPort(): int;

Gets information about the port on which the request is made.

getPost()

public function getPost(
    string $name = null,
    mixed $filters = null,
    mixed $defaultValue = null,
    bool $notAllowEmpty = false,
    bool $noRecursive = false
): mixed;

Gets a variable from the $_POST superglobal applying filters if needed If no parameters are given the $_POST superglobal is returned

// Returns value from $_POST["user_email"] without sanitizing
$userEmail = $request->getPost("user_email");

// Returns value from $_POST["user_email"] with sanitizing
$userEmail = $request->getPost("user_email", "email");

getPreferredIsoLocaleVariant()

public function getPreferredIsoLocaleVariant(): string;

Gets the preferred ISO locale variant.

Gets the preferred locale accepted by the client from the "Accept-Language" request HTTP header and returns the base part of it i.e. en instead of en-US.

Note: This method relies on the $_SERVER["HTTP_ACCEPT_LANGUAGE"] header.

@link https://www.iso.org/standard/50707.html

getPut()

public function getPut(
    string $name = null,
    mixed $filters = null,
    mixed $defaultValue = null,
    bool $notAllowEmpty = false,
    bool $noRecursive = false
): mixed;

Gets a variable from the PUT request

// Returns value from PUT stream without sanitizing
$userEmail = $request->getPut("user_email");

// Returns value from PUT stream with sanitizing
$userEmail = $request->getPut("user_email", "email");

getQuery()

public function getQuery(
    string $name = null,
    mixed $filters = null,
    mixed $defaultValue = null,
    bool $notAllowEmpty = false,
    bool $noRecursive = false
): mixed;

Gets variable from $_GET superglobal applying filters if needed If no parameters are given the $_GET superglobal is returned

// Returns value from $_GET["id"] without sanitizing
$id = $request->getQuery("id");

// Returns value from $_GET["id"] with sanitizing
$id = $request->getQuery("id", "int");

// Returns value from $_GET["id"] with a default value
$id = $request->getQuery("id", null, 150);

getRawBody()

public function getRawBody(): string;

Gets HTTP raw request body

getScheme()

public function getScheme(): string;

Gets HTTP schema (http/https)

getServer()

public function getServer( string $name ): string|null;

Gets variable from $_SERVER superglobal

getServerAddress()

public function getServerAddress(): string;

Gets active server address IP

getServerName()

public function getServerName(): string;

Gets active server name

getURI()

public function getURI( bool $onlyPath = false ): string;

Gets HTTP URI which request has been made to

// Returns /some/path?with=queryParams
$uri = $request->getURI();

// Returns /some/path
$uri = $request->getURI(true);

getUploadedFiles()

public function getUploadedFiles(
    bool $onlySuccessful = false,
    bool $namedKeys = false
): FileInterface[];

Gets attached files as Phalcon\Http\Request\File instances

getUserAgent()

public function getUserAgent(): string;

Gets HTTP user agent used to made the request

has()

public function has( string $name ): bool;

Checks whether $_REQUEST superglobal has certain index

hasFiles()

public function hasFiles(): bool;

Returns if the request has files or not

hasHeader()

final public function hasHeader( string $header ): bool;

Checks whether headers has certain index

hasPatch()

public function hasPatch( string $name ): bool;

Checks whether the PATCH data has certain index

hasPost()

public function hasPost( string $name ): bool;

Checks whether $_POST superglobal has certain index

hasPut()

public function hasPut( string $name ): bool;

Checks whether the PUT data has certain index

hasQuery()

public function hasQuery( string $name ): bool;

Checks whether $_GET superglobal has certain index

hasServer()

final public function hasServer( string $name ): bool;

Checks whether $_SERVER superglobal has certain index

isAjax()

public function isAjax(): bool;

Checks whether request has been made using ajax

isConnect()

public function isConnect(): bool;

Checks whether HTTP method is CONNECT. if _SERVER["REQUEST_METHOD"]==="CONNECT"

isDelete()

public function isDelete(): bool;

Checks whether HTTP method is DELETE. if _SERVER["REQUEST_METHOD"]==="DELETE"

isGet()

public function isGet(): bool;

Checks whether HTTP method is GET. if _SERVER["REQUEST_METHOD"]==="GET"

isHead()

public function isHead(): bool;

Checks whether HTTP method is HEAD. if _SERVER["REQUEST_METHOD"]==="HEAD"

isJson()

public function isJson(): bool;

Checks whether request content type contains json data

isMethod()

public function isMethod(
    mixed $methods,
    bool $strict = false
): bool;

Check if HTTP method match any of the passed methods When strict is true it checks if validated methods are real HTTP methods

isOptions()

public function isOptions(): bool;

Checks whether HTTP method is OPTIONS. if _SERVER["REQUEST_METHOD"]==="OPTIONS"

isPatch()

public function isPatch(): bool;

Checks whether HTTP method is PATCH. if _SERVER["REQUEST_METHOD"]==="PATCH"

isPost()

public function isPost(): bool;

Checks whether HTTP method is POST. if _SERVER["REQUEST_METHOD"]==="POST"

isPurge()

public function isPurge(): bool;

Checks whether HTTP method is PURGE (Squid and Varnish support). if _SERVER["REQUEST_METHOD"]==="PURGE"

isPut()

public function isPut(): bool;

Checks whether HTTP method is PUT. if _SERVER["REQUEST_METHOD"]==="PUT"

isSecure()

public function isSecure(): bool;

Checks whether request has been made using any secure layer

isSoap()

public function isSoap(): bool;

Checks whether request has been made using SOAP

isStrictHostCheck()

public function isStrictHostCheck(): bool;

Checks if the Request::getHttpHost method will be use strict validation of host name or not

isTrace()

public function isTrace(): bool;

Checks whether HTTP method is TRACE. if _SERVER["REQUEST_METHOD"]==="TRACE"

isValidHttpMethod()

public function isValidHttpMethod( string $method ): bool;

Checks if a method is a valid HTTP method

numFiles()

public function numFiles( bool $onlySuccessful = false ): long;

Returns the number of files available

setHttpMethodParameterOverride()

public function setHttpMethodParameterOverride( bool $override ): static;

Set the HTTP method parameter override flag

setParameterFilters()

public function setParameterFilters(
    string $name,
    array $filters = [],
    array $scope = []
): static;

Sets automatic sanitizers/filters for a particular field and for particular methods

setStrictHostCheck()

public function setStrictHostCheck( bool $flag = true ): static;

Sets if the Request::getHttpHost method must be use strict validation of host name or not

setTrustedProxies()

public function setTrustedProxies( array $trustedProxies ): static;

Set a trusted proxy list for X-Forwarded-For header

setTrustedProxyHeader()

public function setTrustedProxyHeader( string $trustedProxyHeader ): static;

This header takes priority when parsing HTTP headers The header return only 1 single IP address, prefixed with HTTP_ eg. HTTP_CLIENT_IP.

Protected · 7

getBestQuality()

protected function getBestQuality(
    array $qualityParts,
    string $name
): string;

Process a request header and return the one with best quality

getHelper()

protected function getHelper(
    array $source,
    string $name = null,
    mixed $filters = null,
    mixed $defaultValue = null,
    bool $notAllowEmpty = false,
    bool $noRecursive = false
): mixed;

Helper to get data from superglobals, applying filters if needed. If no parameters are given the superglobal is returned.

getQualityHeader()

protected function getQualityHeader(
    string $serverIndex,
    string $name
): array;

Process a request header and return an array of values with their qualities

hasFileHelper()

protected function hasFileHelper(
    mixed $data,
    bool $onlySuccessful
): long;

Recursively counts file in an array of files

isIpAddressInCIDR()

protected function isIpAddressInCIDR(
    string $ip,
    string $cidr
): bool;

Check if an IP address exists in CIDR range

resolveAuthorizationHeaders()

protected function resolveAuthorizationHeaders(): array;

Resolve authorization headers.

smoothFiles()

protected function smoothFiles(
    array $names,
    array $types,
    array $tmp_names,
    array $sizes,
    array $errors,
    string $prefix
): array;

Smooth out $_FILES to have plain array with all files uploaded

Http\RequestInterface

Interface Source on GitHub

Interface for Phalcon\Http\Request

  • Phalcon\Http\RequestInterface

Uses Phalcon\Http\Request\FileInterface · stdClass

Method Summary

public mixed get(string $name = null,mixed $filters = null,mixed $defaultValue = null,bool $notAllowEmpty = false,bool $noRecursive = false) Gets a variable from the $_REQUEST superglobal applying filters if public array getAcceptableContent() Gets an array with mime/types and their quality accepted by the public array|null getBasicAuth() Gets auth info accepted by the browser/client from public string getBestAccept() Gets best mime/type accepted by the browser/client from public string getBestCharset() Gets best charset accepted by the browser/client from public string getBestLanguage() Gets best language accepted by the browser/client from public string|bool getClientAddress( bool $trustForwardedHeader = false ) Gets most possible client IPv4 Address. This method searches in public array getClientCharsets() Gets a charsets array and their quality accepted by the browser/client public string|null getContentType() Gets content type which request has been made public array getDigestAuth() Gets auth info accepted by the browser/client from public string getHTTPReferer() Gets web page that refers active request. ie: http://www.google.com public string getHeader( string $header ) Gets HTTP header from request data public array getHeaders() Returns the available headers in the request public string getHttpHost() Gets host name used by the request. public stdClass|array|bool getJsonRawBody( bool $associative = false ) Gets decoded JSON HTTP raw request body public array getLanguages() Gets languages array and their quality accepted by the browser/client public string getMethod() Gets HTTP method which request has been made public int getPort() Gets information about the port on which the request is made public mixed getPost(string $name = null,mixed $filters = null,mixed $defaultValue = null,bool $notAllowEmpty = false,bool $noRecursive = false) Gets a variable from the $_POST superglobal applying filters if needed public mixed getPut(string $name = null,mixed $filters = null,mixed $defaultValue = null,bool $notAllowEmpty = false,bool $noRecursive = false) Gets a variable from the PUT request public mixed getQuery(string $name = null,mixed $filters = null,mixed $defaultValue = null,bool $notAllowEmpty = false,bool $noRecursive = false) Gets variable from $_GET superglobal applying filters if needed public string getRawBody() Gets HTTP raw request body public string getScheme() Gets HTTP schema (http/https) public string|null getServer( string $name ) Gets variable from $_SERVER superglobal public string getServerAddress() Gets active server address IP public string getServerName() Gets active server name public string getURI( bool $onlyPath = false ) Gets HTTP URI which request has been made to public FileInterface[] getUploadedFiles(bool $onlySuccessful = false,bool $namedKeys = false) Gets attached files as Phalcon\Http\Request\FileInterface compatible public string getUserAgent() Gets HTTP user agent used to made the request public bool has( string $name ) Checks whether $_REQUEST superglobal has certain index public bool hasFiles() Checks whether request include attached files public bool hasHeader( string $header ) Checks whether headers has certain index public bool hasPost( string $name ) Checks whether $_POST superglobal has certain index public bool hasPut( string $name ) Checks whether the PUT data has certain index public bool hasQuery( string $name ) Checks whether $_GET superglobal has certain index public bool hasServer( string $name ) Checks whether $_SERVER superglobal has certain index public bool isAjax() Checks whether request has been made using ajax. Checks if $_SERVER["HTTP_X_REQUESTED_WITH"] === "XMLHttpRequest" public bool isConnect() Checks whether HTTP method is CONNECT. if $_SERVER["REQUEST_METHOD"] === "CONNECT" public bool isDelete() Checks whether HTTP method is DELETE. if $_SERVER["REQUEST_METHOD"] === "DELETE" public bool isGet() Checks whether HTTP method is GET. if $_SERVER["REQUEST_METHOD"] === "GET" public bool isHead() Checks whether HTTP method is HEAD. if $_SERVER["REQUEST_METHOD"] === "HEAD" public bool isMethod(mixed $methods,bool $strict = false) Check if HTTP method match any of the passed methods public bool isOptions() Checks whether HTTP method is OPTIONS. if $_SERVER["REQUEST_METHOD"] === "OPTIONS" public bool isPost() Checks whether HTTP method is POST. if $_SERVER["REQUEST_METHOD"] === "POST" public bool isPurge() Checks whether HTTP method is PURGE (Squid and Varnish support). if $_SERVER["REQUEST_METHOD"] === "PURGE" public bool isPut() Checks whether HTTP method is PUT. if $_SERVER["REQUEST_METHOD"] === "PUT" public bool isSecure() Checks whether request has been made using any secure layer public bool isSoap() Checks whether request has been made using SOAP public bool isTrace() Checks whether HTTP method is TRACE. public int numFiles( bool $onlySuccessful = false ) Returns the number of files available

Methods

Public · 50

get()

public function get(
    string $name = null,
    mixed $filters = null,
    mixed $defaultValue = null,
    bool $notAllowEmpty = false,
    bool $noRecursive = false
): mixed;

Gets a variable from the $_REQUEST superglobal applying filters if needed. If no parameters are given the $_REQUEST superglobal is returned

// Returns value from $_REQUEST["user_email"] without sanitizing
$userEmail = $request->get("user_email");

// Returns value from $_REQUEST["user_email"] with sanitizing
$userEmail = $request->get("user_email", "email");

getAcceptableContent()

public function getAcceptableContent(): array;

Gets an array with mime/types and their quality accepted by the browser/client from _SERVER["HTTP_ACCEPT"]

getBasicAuth()

public function getBasicAuth(): array|null;

Gets auth info accepted by the browser/client from $_SERVER["PHP_AUTH_USER"]

getBestAccept()

public function getBestAccept(): string;

Gets best mime/type accepted by the browser/client from _SERVER["HTTP_ACCEPT"]

getBestCharset()

public function getBestCharset(): string;

Gets best charset accepted by the browser/client from _SERVER["HTTP_ACCEPT_CHARSET"]

getBestLanguage()

public function getBestLanguage(): string;

Gets best language accepted by the browser/client from _SERVER["HTTP_ACCEPT_LANGUAGE"]

getClientAddress()

public function getClientAddress( bool $trustForwardedHeader = false ): string|bool;

Gets most possible client IPv4 Address. This method searches in $_SERVER["REMOTE_ADDR"] and optionally in $_SERVER["HTTP_X_FORWARDED_FOR"]

getClientCharsets()

public function getClientCharsets(): array;

Gets a charsets array and their quality accepted by the browser/client from _SERVER["HTTP_ACCEPT_CHARSET"]

getContentType()

public function getContentType(): string|null;

Gets content type which request has been made

getDigestAuth()

public function getDigestAuth(): array;

Gets auth info accepted by the browser/client from $_SERVER["PHP_AUTH_DIGEST"]

getHTTPReferer()

public function getHTTPReferer(): string;

Gets web page that refers active request. ie: http://www.google.com

getHeader()

public function getHeader( string $header ): string;

Gets HTTP header from request data

getHeaders()

public function getHeaders(): array;

Returns the available headers in the request

$_SERVER = [
    "PHP_AUTH_USER" => "phalcon",
    "PHP_AUTH_PW"   => "secret",
];

$headers = $request->getHeaders();

echo $headers["Authorization"]; // Basic cGhhbGNvbjpzZWNyZXQ=

getHttpHost()

public function getHttpHost(): string;

Gets host name used by the request.

Request::getHttpHost trying to find host name in following order:

  • $_SERVER["HTTP_HOST"]
  • $_SERVER["SERVER_NAME"]
  • $_SERVER["SERVER_ADDR"]

Optionally Request::getHttpHost validates and clean host name. The Request::$_strictHostCheck can be used to validate host name.

Note: validation and cleaning have a negative performance impact because they use regular expressions.

use Phalcon\Http\Request;

$request = new Request;

$_SERVER["HTTP_HOST"] = "example.com";
$request->getHttpHost(); // example.com

$_SERVER["HTTP_HOST"] = "example.com:8080";
$request->getHttpHost(); // example.com:8080

$request->setStrictHostCheck(true);
$_SERVER["HTTP_HOST"] = "ex=am~ple.com";
$request->getHttpHost(); // UnexpectedValueException

$_SERVER["HTTP_HOST"] = "ExAmPlE.com";
$request->getHttpHost(); // example.com

getJsonRawBody()

public function getJsonRawBody( bool $associative = false ): stdClass|array|bool;

Gets decoded JSON HTTP raw request body

getLanguages()

public function getLanguages(): array;

Gets languages array and their quality accepted by the browser/client from _SERVER["HTTP_ACCEPT_LANGUAGE"]

getMethod()

public function getMethod(): string;

Gets HTTP method which request has been made

If the X-HTTP-Method-Override header is set, and if the method is a POST, then it is used to determine the "real" intended HTTP method.

The _method request parameter can also be used to determine the HTTP method, but only if setHttpMethodParameterOverride(true) has been called.

The method is always an uppercased string.

getPort()

public function getPort(): int;

Gets information about the port on which the request is made

getPost()

public function getPost(
    string $name = null,
    mixed $filters = null,
    mixed $defaultValue = null,
    bool $notAllowEmpty = false,
    bool $noRecursive = false
): mixed;

Gets a variable from the $_POST superglobal applying filters if needed If no parameters are given the $_POST superglobal is returned

// Returns value from $_POST["user_email"] without sanitizing
$userEmail = $request->getPost("user_email");

// Returns value from $_POST["user_email"] with sanitizing
$userEmail = $request->getPost("user_email", "email");

getPut()

public function getPut(
    string $name = null,
    mixed $filters = null,
    mixed $defaultValue = null,
    bool $notAllowEmpty = false,
    bool $noRecursive = false
): mixed;

Gets a variable from the PUT request

// Returns value from PUT stream without sanitizing
$userEmail = $request->getPut("user_email");

// Returns value from PUT stream with sanitizing
$userEmail = $request->getPut("user_email", "email");

getQuery()

public function getQuery(
    string $name = null,
    mixed $filters = null,
    mixed $defaultValue = null,
    bool $notAllowEmpty = false,
    bool $noRecursive = false
): mixed;

Gets variable from $_GET superglobal applying filters if needed If no parameters are given the $_GET superglobal is returned

// Returns value from $_GET["id"] without sanitizing
$id = $request->getQuery("id");

// Returns value from $_GET["id"] with sanitizing
$id = $request->getQuery("id", "int");

// Returns value from $_GET["id"] with a default value
$id = $request->getQuery("id", null, 150);

getRawBody()

public function getRawBody(): string;

Gets HTTP raw request body

getScheme()

public function getScheme(): string;

Gets HTTP schema (http/https)

getServer()

public function getServer( string $name ): string|null;

Gets variable from $_SERVER superglobal

getServerAddress()

public function getServerAddress(): string;

Gets active server address IP

getServerName()

public function getServerName(): string;

Gets active server name

getURI()

public function getURI( bool $onlyPath = false ): string;

Gets HTTP URI which request has been made to

// Returns /some/path?with=queryParams
$uri = $request->getURI();

// Returns /some/path
$uri = $request->getURI(true);

getUploadedFiles()

public function getUploadedFiles(
    bool $onlySuccessful = false,
    bool $namedKeys = false
): FileInterface[];

Gets attached files as Phalcon\Http\Request\FileInterface compatible instances

getUserAgent()

public function getUserAgent(): string;

Gets HTTP user agent used to made the request

has()

public function has( string $name ): bool;

Checks whether $_REQUEST superglobal has certain index

hasFiles()

public function hasFiles(): bool;

Checks whether request include attached files

hasHeader()

public function hasHeader( string $header ): bool;

Checks whether headers has certain index

hasPost()

public function hasPost( string $name ): bool;

Checks whether $_POST superglobal has certain index

hasPut()

public function hasPut( string $name ): bool;

Checks whether the PUT data has certain index

hasQuery()

public function hasQuery( string $name ): bool;

Checks whether $_GET superglobal has certain index

hasServer()

public function hasServer( string $name ): bool;

Checks whether $_SERVER superglobal has certain index

isAjax()

public function isAjax(): bool;

Checks whether request has been made using ajax. Checks if $_SERVER["HTTP_X_REQUESTED_WITH"] === "XMLHttpRequest"

isConnect()

public function isConnect(): bool;

Checks whether HTTP method is CONNECT. if $_SERVER["REQUEST_METHOD"] === "CONNECT"

isDelete()

public function isDelete(): bool;

Checks whether HTTP method is DELETE. if $_SERVER["REQUEST_METHOD"] === "DELETE"

isGet()

public function isGet(): bool;

Checks whether HTTP method is GET. if $_SERVER["REQUEST_METHOD"] === "GET"

isHead()

public function isHead(): bool;

Checks whether HTTP method is HEAD. if $_SERVER["REQUEST_METHOD"] === "HEAD"

isMethod()

public function isMethod(
    mixed $methods,
    bool $strict = false
): bool;

Check if HTTP method match any of the passed methods

isOptions()

public function isOptions(): bool;

Checks whether HTTP method is OPTIONS. if $_SERVER["REQUEST_METHOD"] === "OPTIONS"

isPost()

public function isPost(): bool;

Checks whether HTTP method is POST. if $_SERVER["REQUEST_METHOD"] === "POST"

isPurge()

public function isPurge(): bool;

Checks whether HTTP method is PURGE (Squid and Varnish support). if $_SERVER["REQUEST_METHOD"] === "PURGE"

isPut()

public function isPut(): bool;

Checks whether HTTP method is PUT. if $_SERVER["REQUEST_METHOD"] === "PUT"

isSecure()

public function isSecure(): bool;

Checks whether request has been made using any secure layer

isSoap()

public function isSoap(): bool;

Checks whether request has been made using SOAP

isTrace()

public function isTrace(): bool;

Checks whether HTTP method is TRACE. if $_SERVER["REQUEST_METHOD"] === "TRACE"

numFiles()

public function numFiles( bool $onlySuccessful = false ): int;

Returns the number of files available

Http\Request\Exception

Class Source on GitHub

Phalcon\Http\Request\Exception

Exceptions thrown in Phalcon\Http\Request will use this class

Http\Request\Exceptions\FilterServiceUnavailable

Class Source on GitHub

Uses Phalcon\Http\Request\Exception

Method Summary

Methods

Public · 1

__construct()

public function __construct();

Http\Request\Exceptions\InvalidHost

Class Source on GitHub

  • UnexpectedValueException
    • Phalcon\Http\Request\Exceptions\InvalidHost

Uses UnexpectedValueException

Method Summary

Methods

Public · 1

__construct()

public function __construct( string $host );

Http\Request\Exceptions\InvalidHttpMethod

Class Source on GitHub

Uses Phalcon\Http\Request\Exception

Method Summary

Methods

Public · 1

__construct()

public function __construct( string $method );

Http\Request\Exceptions\MissingFilters

Class Source on GitHub

Uses Phalcon\Http\Request\Exception

Method Summary

Methods

Public · 1

__construct()

public function __construct( string $name );

Http\Request\Exceptions\SanitizerNotFound

Class Source on GitHub

Uses Phalcon\Http\Request\Exception

Method Summary

Methods

Public · 1

__construct()

public function __construct( string $sanitizer );

Http\Request\File

Class Source on GitHub

Phalcon\Http\Request\File

Provides OO wrappers to the $_FILES superglobal

use Phalcon\Mvc\Controller;

class PostsController extends Controller
{
    public function uploadAction()
    {
        // Check if the user has uploaded files
        if ($this->request->hasFiles() == true) {
            // Print the real file names and their sizes
            foreach ($this->request->getUploadedFiles() as $file) {
                echo $file->getName(), " ", $file->getSize(), "\n";
            }
        }
    }
}

Method Summary

Properties

protected int $error = 0
protected string $extension = ""
protected string $key = ""
protected string $name = ""
protected string $realType
protected int $size = 0
protected string $tmpName = ""
protected string $type = ""

Methods

Public · 11

__construct()

public function __construct(
    array $file,
    string $key = ""
);

Phalcon\Http\Request\File constructor

getError()

public function getError(): int;

getExtension()

public function getExtension(): string;

getKey()

public function getKey(): string;

getName()

public function getName(): string;

Returns the real name of the uploaded file

getRealType()

public function getRealType(): string;

Gets the real mime type of the upload file using finfo

getSize()

public function getSize(): int;

Returns the file size of the uploaded file

getTempName()

public function getTempName(): string;

Returns the temporary name of the uploaded file

getType()

public function getType(): string;

Returns the mime type reported by the browser This mime type is not completely secure, use getRealType() instead

isUploadedFile()

public function isUploadedFile(): bool;

Checks whether the file has been uploaded via Post.

moveTo()

public function moveTo( string $destination ): bool;

Moves the temporary file to a destination within the application

Http\Request\FileInterface

Interface Source on GitHub

Interface for Phalcon\Http\Request\File

  • Phalcon\Http\Request\FileInterface

Method Summary

Methods

Public · 7

getError()

public function getError(): int;

Returns the error if any

getName()

public function getName(): string;

Returns the real name of the uploaded file

getRealType()

public function getRealType(): string;

Gets the real mime type of the upload file using finfo

getSize()

public function getSize(): int;

Returns the file size of the uploaded file

getTempName()

public function getTempName(): string;

Returns the temporal name of the uploaded file

getType()

public function getType(): string;

Returns the mime type reported by the browser This mime type is not completely secure, use getRealType() instead

moveTo()

public function moveTo( string $destination ): bool;

Move the temporary file to a destination

Http\Response

Class Source on GitHub

Part of the HTTP cycle is return responses to the clients. Phalcon\HTTP\Response is the Phalcon component responsible to achieve this task. HTTP responses are usually composed by headers and body.

$response = new \Phalcon\Http\Response();

$response->setStatusCode(200, "OK");
$response->setContent("<html><body>Hello</body></html>");

$response->send();

Uses DateTime · DateTimeZone · Phalcon\Di\Di · Phalcon\Di\DiInterface · Phalcon\Di\InjectionAwareInterface · Phalcon\Events\EventsAwareInterface · Phalcon\Events\ManagerInterface · Phalcon\Http\Message\ResponseStatusCodeInterface · Phalcon\Http\Response\CookiesInterface · Phalcon\Http\Response\Exceptions\NonStandardStatusCodeRequiresMessage · Phalcon\Http\Response\Exceptions\ResponseAlreadySent · Phalcon\Http\Response\Exceptions\UrlServiceUnavailable · Phalcon\Http\Response\Headers · Phalcon\Http\Response\HeadersInterface · Phalcon\Mvc\Url\UrlInterface · Phalcon\Mvc\ViewInterface · Phalcon\Support\Helper\File\Basename · Phalcon\Support\Helper\Json\Encode

Method Summary

public __construct(string $content = null,mixed $code = null,mixed $status = null) Phalcon\Http\Response constructor public ResponseInterface appendContent( mixed $content ) Appends a string to the HTTP response body public string getContent() Gets the HTTP response body public CookiesInterface getCookies() Returns cookies set by the user public DiInterface getDI() Returns the internal dependency injector public ManagerInterface|null getEventsManager() Returns the internal event manager public HeadersInterface getHeaders() Returns headers set by the user public string|null getReasonPhrase() Returns the reason phrase public int|null getStatusCode() Returns the status code public bool hasHeader( string $name ) Checks if a header exists public bool isSent() Check if the response is already sent public ResponseInterface redirect(mixed $location = null,bool $externalRedirect = false,int $statusCode = 302) Redirect by HTTP to another action or URL public ResponseInterface removeHeader( string $name ) Remove a header in the response public ResponseInterface resetHeaders() Resets all the established headers public ResponseInterface send() Prints out HTTP response to the client public ResponseInterface sendCookies() Sends cookies to the client public ResponseInterface|bool sendHeaders() Sends headers to the client public ResponseInterface setCache( int $minutes ) Sets Cache headers to use HTTP cache public ResponseInterface setContent( string $content ) Sets HTTP response body public ResponseInterface setContentLength( int $contentLength ) Sets the response content-length public ResponseInterface setContentType(string $contentType,mixed $charset = null) Sets the response content-type mime, optionally the charset public ResponseInterface setCookies( CookiesInterface $cookies ) Sets a cookies bag for the response externally public void setDI( DiInterface $container ) Sets the dependency injector public ResponseInterface setEtag( string $etag ) Set a custom ETag public void setEventsManager( ManagerInterface $eventsManager ) Sets the events manager public ResponseInterface setExpires( DateTime $datetime ) Sets an Expires header in the response that allows to use the HTTP cache public ResponseInterface setFileToSend(string $filePath,mixed $attachmentName = null,mixed $attachment = true) Sets an attached file to be sent at the end of the request public ResponseInterface setHeader(string $name,mixed $value) Overwrites a header in the response public ResponseInterface setHeaders( HeadersInterface $headers ) Sets a headers bag for the response externally public ResponseInterface setJsonContent(mixed $content,int $jsonOptions = 0,int $depth = 512) Sets HTTP response body. The parameter is automatically converted to JSON public ResponseInterface setLastModified( DateTime $datetime ) Sets Last-Modified header public ResponseInterface setNotModified() Sends a Not-Modified response public ResponseInterface setRawHeader( string $header ) Send a raw header to the response public ResponseInterface setStatusCode(int $code,string $message = null) Sets the HTTP response code

Properties

protected DiInterface|null $container = null
protected string|null $content = null
protected CookiesInterface|null $cookies = null
protected Encode $encode
protected ManagerInterface|null $eventsManager = null
protected string|null $file = null
protected Headers $headers
protected bool $sent = false

Methods

Public · 34

__construct()

public function __construct(
    string $content = null,
    mixed $code = null,
    mixed $status = null
);

Phalcon\Http\Response constructor

appendContent()

public function appendContent( mixed $content ): ResponseInterface;

Appends a string to the HTTP response body

getContent()

public function getContent(): string;

Gets the HTTP response body

getCookies()

public function getCookies(): CookiesInterface;

Returns cookies set by the user

getDI()

public function getDI(): DiInterface;

Returns the internal dependency injector

getEventsManager()

public function getEventsManager(): ManagerInterface|null;

Returns the internal event manager

getHeaders()

public function getHeaders(): HeadersInterface;

Returns headers set by the user

getReasonPhrase()

public function getReasonPhrase(): string|null;

Returns the reason phrase

echo $response->getReasonPhrase();

getStatusCode()

public function getStatusCode(): int|null;

Returns the status code

echo $response->getStatusCode();

hasHeader()

public function hasHeader( string $name ): bool;

Checks if a header exists

$response->hasHeader("Content-Type");

isSent()

public function isSent(): bool;

Check if the response is already sent

redirect()

public function redirect(
    mixed $location = null,
    bool $externalRedirect = false,
    int $statusCode = 302
): ResponseInterface;

Redirect by HTTP to another action or URL

// Using a string redirect (internal/external)
$response->redirect("posts/index");
$response->redirect("http://en.wikipedia.org", true);
$response->redirect("http://www.example.com/new-location", true, 301);

// Making a redirection based on a named route
$response->redirect(
    [
        "for"        => "index-lang",
        "lang"       => "jp",
        "controller" => "index",
    ]
);

removeHeader()

public function removeHeader( string $name ): ResponseInterface;

Remove a header in the response

$response->removeHeader("Expires");

resetHeaders()

public function resetHeaders(): ResponseInterface;

Resets all the established headers

send()

public function send(): ResponseInterface;

Prints out HTTP response to the client

sendCookies()

public function sendCookies(): ResponseInterface;

Sends cookies to the client

sendHeaders()

public function sendHeaders(): ResponseInterface|bool;

Sends headers to the client

setCache()

public function setCache( int $minutes ): ResponseInterface;

Sets Cache headers to use HTTP cache

$this->response->setCache(60);

setContent()

public function setContent( string $content ): ResponseInterface;

Sets HTTP response body

$response->setContent("<h1>Hello!</h1>");

setContentLength()

public function setContentLength( int $contentLength ): ResponseInterface;

Sets the response content-length

$response->setContentLength(2048);

setContentType()

public function setContentType(
    string $contentType,
    mixed $charset = null
): ResponseInterface;

Sets the response content-type mime, optionally the charset

$response->setContentType("application/pdf");
$response->setContentType("text/plain", "UTF-8");

setCookies()

public function setCookies( CookiesInterface $cookies ): ResponseInterface;

Sets a cookies bag for the response externally

setDI()

public function setDI( DiInterface $container ): void;

Sets the dependency injector

setEtag()

public function setEtag( string $etag ): ResponseInterface;

Set a custom ETag

$response->setEtag(
    md5(
        time()
    )
);

setEventsManager()

public function setEventsManager( ManagerInterface $eventsManager ): void;

Sets the events manager

setExpires()

public function setExpires( DateTime $datetime ): ResponseInterface;

Sets an Expires header in the response that allows to use the HTTP cache

$this->response->setExpires(
    new DateTime()
);

setFileToSend()

public function setFileToSend(
    string $filePath,
    mixed $attachmentName = null,
    mixed $attachment = true
): ResponseInterface;

Sets an attached file to be sent at the end of the request

setHeader()

public function setHeader(
    string $name,
    mixed $value
): ResponseInterface;

Overwrites a header in the response

$response->setHeader("Content-Type", "text/plain");

setHeaders()

public function setHeaders( HeadersInterface $headers ): ResponseInterface;

Sets a headers bag for the response externally

setJsonContent()

public function setJsonContent(
    mixed $content,
    int $jsonOptions = 0,
    int $depth = 512
): ResponseInterface;

Sets HTTP response body. The parameter is automatically converted to JSON and also sets default header: Content-Type: "application/json; charset=UTF-8"

$response->setJsonContent(
    [
        "status" => "OK",
    ]
);

setLastModified()

public function setLastModified( DateTime $datetime ): ResponseInterface;

Sets Last-Modified header

$this->response->setLastModified(
    new DateTime()
);

setNotModified()

public function setNotModified(): ResponseInterface;

Sends a Not-Modified response

setRawHeader()

public function setRawHeader( string $header ): ResponseInterface;

Send a raw header to the response

$response->setRawHeader("HTTP/1.1 404 Not Found");

setStatusCode()

public function setStatusCode(
    int $code,
    string $message = null
): ResponseInterface;

Sets the HTTP response code

$response->setStatusCode(404, "Not Found");

Http\ResponseInterface

Interface Source on GitHub

Phalcon\Http\Response

Interface for Phalcon\Http\Response

  • Phalcon\Http\ResponseInterface

Uses DateTime · Phalcon\Http\Response\HeadersInterface

Method Summary

public ResponseInterface appendContent( string $content ) Appends a string to the HTTP response body public string getContent() Gets the HTTP response body public HeadersInterface getHeaders() Returns headers set by the user public int|null getStatusCode() Returns the status code public bool hasHeader( string $name ) Checks if a header exists public bool isSent() Checks if the response was already sent public ResponseInterface redirect(string $location = null,bool $externalRedirect = false,int $statusCode = 302) Redirect by HTTP to another action or URL public ResponseInterface resetHeaders() Resets all the established headers public ResponseInterface send() Prints out HTTP response to the client public ResponseInterface sendCookies() Sends cookies to the client public ResponseInterface|bool sendHeaders() Sends headers to the client public ResponseInterface setContent( string $content ) Sets HTTP response body public ResponseInterface setContentLength( int $contentLength ) Sets the response content-length public ResponseInterface setContentType(string $contentType,string $charset = null) Sets the response content-type mime, optionally the charset public ResponseInterface setExpires( DateTime $datetime ) Sets output expire time header public ResponseInterface setFileToSend(string $filePath,string $attachmentName = null) Sets an attached file to be sent at the end of the request public ResponseInterface setHeader(string $name,string $value) Overwrites a header in the response public ResponseInterface setJsonContent( mixed $content ) Sets HTTP response body. The parameter is automatically converted to JSON public ResponseInterface setNotModified() Sends a Not-Modified response public ResponseInterface setRawHeader( string $header ) Send a raw header to the response public ResponseInterface setStatusCode(int $code,string $message = null) Sets the HTTP response code

Methods

Public · 21

appendContent()

public function appendContent( string $content ): ResponseInterface;

Appends a string to the HTTP response body

getContent()

public function getContent(): string;

Gets the HTTP response body

getHeaders()

public function getHeaders(): HeadersInterface;

Returns headers set by the user

getStatusCode()

public function getStatusCode(): int|null;

Returns the status code

hasHeader()

public function hasHeader( string $name ): bool;

Checks if a header exists

isSent()

public function isSent(): bool;

Checks if the response was already sent

redirect()

public function redirect(
    string $location = null,
    bool $externalRedirect = false,
    int $statusCode = 302
): ResponseInterface;

Redirect by HTTP to another action or URL

resetHeaders()

public function resetHeaders(): ResponseInterface;

Resets all the established headers

send()

public function send(): ResponseInterface;

Prints out HTTP response to the client

sendCookies()

public function sendCookies(): ResponseInterface;

Sends cookies to the client

sendHeaders()

public function sendHeaders(): ResponseInterface|bool;

Sends headers to the client

setContent()

public function setContent( string $content ): ResponseInterface;

Sets HTTP response body

setContentLength()

public function setContentLength( int $contentLength ): ResponseInterface;

Sets the response content-length

setContentType()

public function setContentType(
    string $contentType,
    string $charset = null
): ResponseInterface;

Sets the response content-type mime, optionally the charset

setExpires()

public function setExpires( DateTime $datetime ): ResponseInterface;

Sets output expire time header

setFileToSend()

public function setFileToSend(
    string $filePath,
    string $attachmentName = null
): ResponseInterface;

Sets an attached file to be sent at the end of the request

setHeader()

public function setHeader(
    string $name,
    string $value
): ResponseInterface;

Overwrites a header in the response

setJsonContent()

public function setJsonContent( mixed $content ): ResponseInterface;

Sets HTTP response body. The parameter is automatically converted to JSON

$response->setJsonContent(
    [
        "status" => "OK",
    ]
);

setNotModified()

public function setNotModified(): ResponseInterface;

Sends a Not-Modified response

setRawHeader()

public function setRawHeader( string $header ): ResponseInterface;

Send a raw header to the response

setStatusCode()

public function setStatusCode(
    int $code,
    string $message = null
): ResponseInterface;

Sets the HTTP response code

Http\Response\Cookies

Class Source on GitHub

This class is a bag to manage the cookies.

A cookies bag is automatically registered as part of the 'response' service in the DI. By default, cookies are automatically encrypted before being sent to the client and are decrypted when retrieved from the user. To set sign key used to generate a message authentication code use Phalcon\Http\Response\Cookies::setSignKey().

use Phalcon\Di\Di;
use Phalcon\Encryption\Crypt;
use Phalcon\Http\Response\Cookies;

$di = new Di();

$di->set(
    'crypt',
    function () {
        $crypt = new Crypt();

        // The `$key' should have been previously generated in a cryptographically safe way.
        $key = "T4\xb1\x8d\xa9\x98\x05\\\x8c\xbe\x1d\x07&[\x99\x18\xa4~Lc1\xbeW\xb3";

        $crypt->setKey($key);

        return $crypt;
    }
);

$di->set(
    'cookies',
    function () {
        $cookies = new Cookies();

        // The `$key' MUST be at least 32 characters long and generated using a
        // cryptographically secure pseudo random generator.
        $key = "#1dj8$=dp?.ak//j1V$~%*0XaK\xb1\x8d\xa9\x98\x054t7w!z%C*F-Jk\x98\x05\\\x5c";

        $cookies->setSignKey($key);

        return $cookies;
    }
);

Uses Phalcon\Di\AbstractInjectionAware · Phalcon\Di\DiInterface · Phalcon\Http\Cookie\CookieInterface · Phalcon\Http\Cookie\Exception · Phalcon\Http\Response\Exceptions\ResponseServiceUnavailable

Method Summary

Properties

protected array $cookies = []
protected bool $isRegistered = false
protected bool $isSent = false
protected string|null $signKey = null The cookie's sign key.
protected bool $useEncryption = true

Methods

Public · 12

__construct()

public function __construct(
    bool $useEncryption = true,
    string $signKey = null
);

Phalcon\Http\Response\Cookies constructor

delete()

public function delete( string $name ): bool;

Deletes a cookie by its name This method does not removes cookies from the _COOKIE superglobal

get()

public function get( string $name ): CookieInterface;

Gets a cookie from the bag

getCookies()

public function getCookies(): array;

Gets all cookies from the bag

has()

public function has( string $name ): bool;

Check if a cookie is defined in the bag or exists in the _COOKIE superglobal

isSent()

public function isSent(): bool;

Returns if the headers have already been sent

isUsingEncryption()

public function isUsingEncryption(): bool;

Returns if the bag is automatically encrypting/decrypting cookies

reset()

public function reset(): CookiesInterface;

Reset set cookies

send()

public function send(): bool;

Sends the cookies to the client Cookies aren't sent if headers are sent in the current request

set()

public function set(
    string $name,
    mixed $value = null,
    int $expire = 0,
    string $path = "/",
    bool $secure = false,
    string $domain = "",
    bool $httpOnly = false,
    array $options = []
): CookiesInterface;

Sets a cookie to be sent at the end of the request.

This method overrides any cookie set before with the same name.

use Phalcon\Http\Response\Cookies;

$now = new DateTimeImmutable();
$tomorrow = $now->modify('tomorrow');

$cookies = new Cookies();
$cookies->set(
    'remember-me',
    json_encode(['user_id' => 1]),
    (int) $tomorrow->format('U'),
);

setSignKey()

public function setSignKey( string $signKey = null ): CookiesInterface;

Sets the cookie's sign key.

The `$signKey' MUST be at least 32 characters long and generated using a cryptographically secure pseudo random generator.

Use NULL to disable cookie signing.

@see \Phalcon\Security\Random

useEncryption()

public function useEncryption( bool $useEncryption ): CookiesInterface;

Set if cookies in the bag must be automatically encrypted/decrypted

Http\Response\CookiesInterface

Interface Source on GitHub

Interface for Phalcon\Http\Response\Cookies

  • Phalcon\Http\Response\CookiesInterface

Uses Phalcon\Http\Cookie\CookieInterface

Method Summary

Methods

Public · 8

delete()

public function delete( string $name ): bool;

Deletes a cookie by its name This method does not removes cookies from the _COOKIE superglobal

get()

public function get( string $name ): CookieInterface;

Gets a cookie from the bag

has()

public function has( string $name ): bool;

Check if a cookie is defined in the bag or exists in the _COOKIE superglobal

isUsingEncryption()

public function isUsingEncryption(): bool;

Returns if the bag is automatically encrypting/decrypting cookies

reset()

public function reset(): CookiesInterface;

Reset set cookies

send()

public function send(): bool;

Sends the cookies to the client

set()

public function set(
    string $name,
    mixed $value = null,
    int $expire = 0,
    string $path = "/",
    bool $secure = false,
    string $domain = "",
    bool $httpOnly = false,
    array $options = []
): CookiesInterface;

Sets a cookie to be sent at the end of the request

useEncryption()

public function useEncryption( bool $useEncryption ): CookiesInterface;

Set if cookies in the bag must be automatically encrypted/decrypted

Http\Response\Exception

Class Source on GitHub

Phalcon\Http\Response\Exception

Exceptions thrown in Phalcon\Http\Response will use this class.

Http\Response\Exceptions\NonStandardStatusCodeRequiresMessage

Class Source on GitHub

Uses Phalcon\Http\Response\Exception

Method Summary

Methods

Public · 1

__construct()

public function __construct();

Http\Response\Exceptions\ResponseAlreadySent

Class Source on GitHub

Uses Phalcon\Http\Response\Exception

Method Summary

Methods

Public · 1

__construct()

public function __construct();

Http\Response\Exceptions\ResponseServiceUnavailable

Class Source on GitHub

Uses Phalcon\Http\Response\Exception

Method Summary

Methods

Public · 1

__construct()

public function __construct();

Http\Response\Exceptions\UrlServiceUnavailable

Class Source on GitHub

Uses Phalcon\Http\Response\Exception

Method Summary

Methods

Public · 1

__construct()

public function __construct();

Http\Response\Headers

Class Source on GitHub

This class is a bag to manage the response headers

Uses IteratorAggregate · Traversable

Method Summary

Properties

protected array $headers = []
protected bool $isSent = false

Methods

Public · 10

get()

public function get( string $name ): string|bool|null;

Gets a header value from the internal bag

getIterator()

public function getIterator(): Traversable;

has()

public function has( string $name ): bool;

Checks if a header exists

isSent()

public function isSent(): bool;

Returns if the headers have already been sent

remove()

public function remove( string $header ): HeadersInterface;

Removes a header by its name

reset()

public function reset(): void;

Reset set headers

send()

public function send(): bool;

Sends the headers to the client

set()

public function set(
    string $name,
    string $value
): HeadersInterface;

Sets a header to be sent at the end of the request

setRaw()

public function setRaw( string $header ): HeadersInterface;

Sets a raw header to be sent at the end of the request

toArray()

public function toArray(): array;

Returns the current headers as an array

Http\Response\HeadersInterface

Interface Source on GitHub

Interface for Phalcon\Http\Response\Headers compatible bags

  • Phalcon\Http\Response\HeadersInterface

Method Summary

Methods

Public · 6

get()

public function get( string $name ): string|bool|null;

Gets a header value from the internal bag

has()

public function has( string $name ): bool;

Checks if a header exists

reset()

public function reset(): void;

Reset set headers

send()

public function send(): bool;

Sends the headers to the client

set()

public function set(
    string $name,
    string $value
): HeadersInterface;

Sets a header to be sent at the end of the request

setRaw()

public function setRaw( string $header ): HeadersInterface;

Sets a raw header to be sent at the end of the request