Class CLIRequest

Summary

Fully Qualified Name: CodeIgniter\HTTP\CLIRequest
Extends: Request

Description

Class CLIRequest

Represents a request from the command-line. Provides additional tools to interact with that request since CLI requests are not static like HTTP requests might be.

Portions of this code were initially from the FuelPHP Framework, version 1.7.x, and used here under the MIT license they were originally made available under.

http://fuelphp.com

Methods

Name Description Defined By
__construct() Constructor CLIRequest
appendBody() Appends data to the body of the current message. Message
appendHeader() Adds an additional header value to any headers that accept multiple values (i.e. are an array or implement ArrayAccess) Message
fetchGlobal() Fetches one or more items from a global, like cookies, get, post, etc. Request
getBody() Returns the Message's body. Message
getEnv() Fetch an item from the $_ENV array. Request
getHeader() Returns a single header object. If multiple headers with the same name exist, then will return an array of header objects. Message
getHeaderLine() Retrieves a comma-separated string of the values for a single header. Message
getHeaders() Returns an array containing all headers. Message
getIPAddress() Gets the user's IP address. Request
getMethod() Get the request method. Request
getOption() Returns the value for a single CLI option that was passed in. CLIRequest
getOptionString() Returns the options as a string, suitable for passing along on the CLI to other commands. CLIRequest
getOptions() Returns an associative array of all CLI options found, with their values. CLIRequest
getPath() Returns the "path" of the request script so that it can be used in routing to the appropriate controller/method. CLIRequest
getProtocolVersion() Returns the HTTP Protocol Version. Message
getSegments() Returns the path segments. CLIRequest
getServer() Fetch an item from the $_SERVER array. Request
hasHeader() Determines whether a header exists. Message
isValidIP() Validate an IP address Request
populateHeaders() Populates the $headers array with any headers the getServer knows about. Message
prependHeader() Adds an additional header value to any headers that accept multiple values (i.e. are an array or implement ArrayAccess) Message
removeHeader() Removes a header from the list of headers we track. Message
setBody() Sets the body of the current message. Message
setGlobal() Allows manually setting the value of PHP global, like $_GET, $_POST, etc. Request
setHeader() Sets a header and it's value. Message
setMethod() Sets the request method. Used when spoofing the request. Request
setProtocolVersion() Sets the HTTP protocol version. Message

Method Details

__construct()

Constructor

Parameter Name Type Description
$config \App

Returns:

appendBody()

Appends data to the body of the current message.

Parameter Name Type Description
$data
$data

Returns: \Message|\Response

appendHeader()

Adds an additional header value to any headers that accept multiple values (i.e. are an array or implement ArrayAccess)

Parameter Name Type Description
$name string
$value string

Returns: \Message

fetchGlobal()

Fetches one or more items from a global, like cookies, get, post, etc.

Can optionally filter the input when you retrieve it by passing in a filter.

If $type is an array, it must conform to the input allowed by the filter_input_array method.

http://php.net/manual/en/filter.filters.sanitize.php

Parameter Name Type Description
$method string Input
$index string|array|null
$filter int|null Filter
$flags mixed

Returns: mixed

getBody()

Returns the Message's body.

Returns: mixed

getEnv()

Fetch an item from the $_ENV array.

Parameter Name Type Description
$index null Index
$filter null A
$flags null

Returns: mixed

getHeader()

Returns a single header object. If multiple headers with the same name exist, then will return an array of header objects.

Parameter Name Type Description
$name string

Returns: array|\CodeIgniter\HTTP\Header

getHeaderLine()

Retrieves a comma-separated string of the values for a single header.

This method returns all of the header values of the given case-insensitive header name as a string concatenated together using a comma.

NOTE: Not all header values may be appropriately represented using comma concatenation. For such headers, use getHeader() instead and supply your own delimiter when concatenating.

Parameter Name Type Description
$name string

Returns: string

getHeaders()

Returns an array containing all headers.

Returns: array An array of the request headers

getIPAddress()

Gets the user's IP address.

Returns: string IP address

getMethod()

Get the request method.

Parameter Name Type Description
$upper bool Whether

Returns: string

getOption()

Returns the value for a single CLI option that was passed in.

Parameter Name Type Description
$key string

Returns: string|null

getOptionString()

Returns the options as a string, suitable for passing along on the CLI to other commands.

Example: $options = [

'foo' => 'bar',
'baz' => 'queue some stuff'

];

getOptionString() = '-foo bar -baz "queue some stuff"'

Returns: string

getOptions()

Returns an associative array of all CLI options found, with their values.

Returns: array

getPath()

Returns the "path" of the request script so that it can be used in routing to the appropriate controller/method.

The path is determined by treating the command line arguments as if it were a URL - up until we hit our first option.

Example:

 php index.php users 21 profile -foo bar

 // Routes to /users/21/profile (index is removed for routing sake)
 // with the option foo = bar.

Returns: string

getProtocolVersion()

Returns the HTTP Protocol Version.

Returns: string

getSegments()

Returns the path segments.

Returns: array

getServer()

Fetch an item from the $_SERVER array.

Parameter Name Type Description
$index string|array|null Index
$filter int|null A
$flags null

Returns: mixed

hasHeader()

Determines whether a header exists.

Parameter Name Type Description
$name string

Returns: bool

isValidIP()

Validate an IP address

Parameter Name Type Description
$ip string IP
$which string IP

Returns: bool

populateHeaders()

Populates the $headers array with any headers the getServer knows about.

Returns:

prependHeader()

Adds an additional header value to any headers that accept multiple values (i.e. are an array or implement ArrayAccess)

Parameter Name Type Description
$name string
$value string

Returns: \Message

removeHeader()

Removes a header from the list of headers we track.

Parameter Name Type Description
$name string

Returns: \Message

setBody()

Sets the body of the current message.

Parameter Name Type Description
$data mixed

Returns: \Message|\Response

setGlobal()

Allows manually setting the value of PHP global, like $_GET, $_POST, etc.

Parameter Name Type Description
$method string
$value
$value

Returns: $this

setHeader()

Sets a header and it's value.

Parameter Name Type Description
$name string
$value array|null|string

Returns: \Message|\Response

setMethod()

Sets the request method. Used when spoofing the request.

Parameter Name Type Description
$method string

Returns: \Request

setProtocolVersion()

Sets the HTTP protocol version.

Parameter Name Type Description
$version string

Returns: \Message

Top