class Client extends Client

Client simulates a browser and makes requests to a Kernel object.

Properties

protected $history from Client
protected $cookieJar from Client
protected $server from Client
protected $internalRequest from Client
protected $request from Client
protected $internalResponse from Client
protected $response from Client
protected $crawler from Client
protected $insulated from Client
protected $redirect from Client
protected $followRedirects from Client
protected $kernel from Client

Methods

__construct(HttpKernelInterface $kernel, array $server = array(), History $history = null, CookieJar $cookieJar = null)

No description

followRedirects(bool $followRedirect = true)

Sets whether to automatically follow redirects or not.

from Client
bool
isFollowingRedirects()

Returns whether client automatically follows redirects or not.

from Client
setMaxRedirects(int $maxRedirects)

Sets the maximum number of requests that crawler can follow.

from Client
int
getMaxRedirects()

Returns the maximum number of requests that crawler can follow.

from Client
insulate(bool $insulated = true)

Sets the insulated flag.

from Client
setServerParameters(array $server)

Sets server parameters.

from Client
setServerParameter(string $key, string $value)

Sets single server parameter.

from Client
string
getServerParameter(string $key, string $default = '')

Gets single server parameter for specified key.

from Client
getHistory()

Returns the History instance.

from Client
getCookieJar()

Returns the CookieJar instance.

from Client
Crawler|null
getCrawler()

Returns the current Crawler instance.

from Client
Response|null
getInternalResponse()

Returns the current BrowserKit Response instance.

from Client
Response|null
getResponse()

A Response instance

from Client
Request|null
getInternalRequest()

Returns the current BrowserKit Request instance.

from Client
Request|null
getRequest()

A Request instance

from Client
click(Link $link)

Clicks on a given link.

from Client
submit(Form $form, array $values = array())

Submits a form.

from Client
request(string $method, string $uri, array $parameters = array(), array $files = array(), array $server = array(), string $content = null, bool $changeHistory = true)

Calls a URI.

from Client
object
doRequestInProcess(object $request)

Makes a request in another process.

object
doRequest(object $request)

Makes a request.

getScript(object $request)

Returns the script to execute when the request must be insulated.

object
filterRequest(Request $request)

Converts the BrowserKit request to a HttpKernel request.

from Client
filterResponse(object $response)

Converts the HttpKernel response to a BrowserKit response.

from Client
Crawler|null
createCrawlerFromContent(string $uri, string $content, string $type)

Creates a crawler.

from Client
back()

Goes back in the browser history.

from Client
forward()

Goes forward in the browser history.

from Client
reload()

Reloads the current browser.

from Client
followRedirect()

Follow redirects?

from Client
restart()

Restarts the client.

from Client
string
getAbsoluteUri(string $uri)

Takes a URI and converts it to absolute if it is not already absolute.

from Client
requestFromRequest(Request $request, bool $changeHistory = true)

Makes a request from a Request object directly.

from Client
getHandleScript()

No description

from Client
array
filterFiles(array $files)

Filters an array of files.

from Client
getContainer()

Returns the container.

getKernel()

Returns the kernel.

Profile|false
getProfile()

Gets the profile associated with the current Response.

enableProfiler()

Enables the profiler for the very next request.

disableReboot()

Disables kernel reboot between requests.

enableReboot()

Enables kernel reboot between requests.

Details

at line 37
__construct(HttpKernelInterface $kernel, array $server = array(), History $history = null, CookieJar $cookieJar = null)

Parameters

HttpKernelInterface $kernel An HttpKernel instance
array $server The server parameters (equivalent of $_SERVER)
History $history A History instance to store the browser history
CookieJar $cookieJar A CookieJar instance to store the cookies

in Client at line 64
followRedirects(bool $followRedirect = true)

Sets whether to automatically follow redirects or not.

Parameters

bool $followRedirect Whether to follow redirects

in Client at line 74
bool isFollowingRedirects()

Returns whether client automatically follows redirects or not.

Return Value

bool

in Client at line 84
setMaxRedirects(int $maxRedirects)

Sets the maximum number of requests that crawler can follow.

Parameters

int $maxRedirects

in Client at line 95
int getMaxRedirects()

Returns the maximum number of requests that crawler can follow.

Return Value

int

in Client at line 107
insulate(bool $insulated = true)

Sets the insulated flag.

Parameters

bool $insulated Whether to insulate the requests or not

Exceptions

RuntimeException When Symfony Process Component is not installed

in Client at line 121
setServerParameters(array $server)

Sets server parameters.

Parameters

array $server An array of server parameters

in Client at line 134
setServerParameter(string $key, string $value)

Sets single server parameter.

Parameters

string $key A key of the parameter
string $value A value of the parameter

in Client at line 147
string getServerParameter(string $key, string $default = '')

Gets single server parameter for specified key.

Parameters

string $key A key of the parameter to get
string $default A default value when key is undefined

Return Value

string A value of the parameter

in Client at line 157
History getHistory()

Returns the History instance.

Return Value

History A History instance

in Client at line 167
CookieJar getCookieJar()

Returns the CookieJar instance.

Return Value

CookieJar A CookieJar instance

in Client at line 177
Crawler|null getCrawler()

Returns the current Crawler instance.

Return Value

Crawler|null A Crawler instance

in Client at line 187
Response|null getInternalResponse()

Returns the current BrowserKit Response instance.

Return Value

Response|null A BrowserKit Response instance

in Client at line 32
Response|null getResponse()

A Response instance

Return Value

Response|null

in Client at line 212
Request|null getInternalRequest()

Returns the current BrowserKit Request instance.

Return Value

Request|null A BrowserKit Request instance

in Client at line 32
Request|null getRequest()

A Request instance

Return Value

Request|null

in Client at line 237
Crawler click(Link $link)

Clicks on a given link.

Parameters

Link $link

Return Value

Crawler

in Client at line 254
Crawler submit(Form $form, array $values = array())

Submits a form.

Parameters

Form $form A Form instance
array $values An array of form field values

Return Value

Crawler

in Client at line 274
Crawler request(string $method, string $uri, array $parameters = array(), array $files = array(), array $server = array(), string $content = null, bool $changeHistory = true)

Calls a URI.

Parameters

string $method The request method
string $uri The URI to fetch
array $parameters The Request parameters
array $files The files
array $server The server parameters (HTTP headers are referenced with a HTTP_ prefix as PHP does)
string $content The raw body data
bool $changeHistory Whether to update the history or not (only used internally for back(), forward(), and reload())

Return Value

Crawler

at line 141
protected object doRequestInProcess(object $request)

Makes a request in another process.

Parameters

object $request An origin request instance

Return Value

object An origin response instance

Exceptions

RuntimeException When processing returns exit code

at line 114
protected object doRequest(object $request)

Makes a request.

Parameters

object $request An origin request instance

Return Value

object An origin response instance

at line 162
protected getScript(object $request)

Returns the script to execute when the request must be insulated.

It assumes that the autoloader is named 'autoload.php' and that it is stored in the same directory as the kernel (this is the case for the Symfony Standard Edition). If this is not your case, create your own client and override this method.

Parameters

object $request An origin request instance

in Client at line 118
protected object filterRequest(Request $request)

Converts the BrowserKit request to a HttpKernel request.

Parameters

Request $request The BrowserKit Request to filter

Return Value

object An origin request instance

in Client at line 179
protected Response filterResponse(object $response)

Converts the HttpKernel response to a BrowserKit response.

Parameters

object $response The origin response to filter

Return Value

Response An BrowserKit Response instance

in Client at line 410
protected Crawler|null createCrawlerFromContent(string $uri, string $content, string $type)

Creates a crawler.

This method returns null if the DomCrawler component is not available.

Parameters

string $uri A URI
string $content Content for the crawler to use
string $type Content type

Return Value

Crawler|null

in Client at line 427
Crawler back()

Goes back in the browser history.

Return Value

Crawler

in Client at line 437
Crawler forward()

Goes forward in the browser history.

Return Value

Crawler

in Client at line 447
Crawler reload()

Reloads the current browser.

Return Value

Crawler

in Client at line 459
Crawler followRedirect()

Follow redirects?

Return Value

Crawler

Exceptions

LogicException If request was not a redirect

in Client at line 508
restart()

Restarts the client.

It flushes history and all cookies.

in Client at line 521
protected string getAbsoluteUri(string $uri)

Takes a URI and converts it to absolute if it is not already absolute.

Parameters

string $uri A URI

Return Value

string An absolute URI

in Client at line 568
protected Crawler requestFromRequest(Request $request, bool $changeHistory = true)

Makes a request from a Request object directly.

Parameters

Request $request A Request instance
bool $changeHistory Whether to update the history or not (only used internally for back(), forward(), and reload())

Return Value

Crawler

in Client at line 100
protected getHandleScript()

in Client at line 142
protected array filterFiles(array $files)

Filters an array of files.

This method created test instances of UploadedFile so that the move() method can be called on those instances.

If the size of a file is greater than the allowed size (from php.ini) then an invalid UploadedFile is returned with an error set to UPLOAD_ERR_INI_SIZE.

Parameters

array $files

Return Value

array An array with all uploaded files marked as already moved

See also

UploadedFile

at line 47
ContainerInterface|null getContainer()

Returns the container.

Return Value

ContainerInterface|null Returns null when the Kernel has been shutdown or not started yet

at line 57
KernelInterface getKernel()

Returns the kernel.

Return Value

KernelInterface

at line 67
Profile|false getProfile()

Gets the profile associated with the current Response.

Return Value

Profile|false A Profile instance

at line 81
enableProfiler()

Enables the profiler for the very next request.

If the profiler is not enabled, the call to this method does nothing.

at line 94
disableReboot()

Disables kernel reboot between requests.

By default, the Client reboots the Kernel for each request. This method allows to keep the same kernel across requests.

at line 102
enableReboot()

Enables kernel reboot between requests.