abstract class Client extends AbstractBrowser

Properties

protected $history from AbstractBrowser
protected $cookieJar from AbstractBrowser
protected $server from AbstractBrowser
protected $internalRequest from AbstractBrowser
protected $request from AbstractBrowser
protected $internalResponse from AbstractBrowser
protected $response from AbstractBrowser
protected $crawler from AbstractBrowser
protected $insulated from AbstractBrowser
protected $redirect from AbstractBrowser
protected $followRedirects from AbstractBrowser
protected $followMetaRefresh from AbstractBrowser

Methods

__construct(array $server = [], History $history = null, CookieJar $cookieJar = null)

No description

followRedirects(bool $followRedirect = true)

Sets whether to automatically follow redirects or not.

followMetaRefresh(bool $followMetaRefresh = true)

Sets whether to automatically follow meta refresh redirects or not.

bool
isFollowingRedirects()

Returns whether client automatically follows redirects or not.

setMaxRedirects(int $maxRedirects)

Sets the maximum number of redirects that crawler can follow.

int
getMaxRedirects()

Returns the maximum number of redirects that crawler can follow.

insulate(bool $insulated = true)

Sets the insulated flag.

setServerParameters(array $server)

Sets server parameters.

setServerParameter(string $key, string $value)

Sets single server parameter.

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

Gets single server parameter for specified key.

xmlHttpRequest(string $method, string $uri, array $parameters = [], array $files = [], array $server = [], string $content = null, bool $changeHistory = true)

No description

getHistory()

Returns the History instance.

getCookieJar()

Returns the CookieJar instance.

getCrawler()

Returns the current Crawler instance.

getInternalResponse()

Returns the current BrowserKit Response instance.

object
getResponse()

Returns the current origin response instance.

getInternalRequest()

Returns the current BrowserKit Request instance.

object
getRequest()

Returns the current origin Request instance.

click(Link $link)

Clicks on a given link.

clickLink(string $linkText)

Clicks the first link (or clickable image) that contains the given text.

submit(Form $form, array $values = [])

Submits a form.

submitForm(string $button, array $fieldValues = [], string $method = 'POST', array $serverParameters = [])

Finds the first form that contains a button with the given content and uses it to submit the given form field values.

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

Calls a URI.

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)

Filters the BrowserKit request to the origin one.

filterResponse(object $response)

Filters the origin response to the BrowserKit one.

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

Creates a crawler.

back()

Goes back in the browser history.

forward()

Goes forward in the browser history.

reload()

Reloads the current browser.

followRedirect()

Follow redirects?

restart()

Restarts the client.

string
getAbsoluteUri(string $uri)

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

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

Makes a request from a Request object directly.

Details

in AbstractBrowser at line 58
__construct(array $server = [], History $history = null, CookieJar $cookieJar = null)

Parameters

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 AbstractBrowser at line 70
followRedirects(bool $followRedirect = true)

Sets whether to automatically follow redirects or not.

Parameters

bool $followRedirect Whether to follow redirects

in AbstractBrowser at line 78
followMetaRefresh(bool $followMetaRefresh = true)

Sets whether to automatically follow meta refresh redirects or not.

Parameters

bool $followMetaRefresh

in AbstractBrowser at line 88
bool isFollowingRedirects()

Returns whether client automatically follows redirects or not.

Return Value

bool

in AbstractBrowser at line 98
setMaxRedirects(int $maxRedirects)

Sets the maximum number of redirects that crawler can follow.

Parameters

int $maxRedirects

in AbstractBrowser at line 109
int getMaxRedirects()

Returns the maximum number of redirects that crawler can follow.

Return Value

int

in AbstractBrowser at line 121
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 AbstractBrowser at line 135
setServerParameters(array $server)

Sets server parameters.

Parameters

array $server An array of server parameters

in AbstractBrowser at line 148
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 AbstractBrowser at line 161
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 AbstractBrowser at line 166
Crawler xmlHttpRequest(string $method, string $uri, array $parameters = [], array $files = [], array $server = [], string $content = null, bool $changeHistory = true)

Parameters

string $method
string $uri
array $parameters
array $files
array $server
string $content
bool $changeHistory

Return Value

Crawler

in AbstractBrowser at line 182
History getHistory()

Returns the History instance.

Return Value

History A History instance

in AbstractBrowser at line 192
CookieJar getCookieJar()

Returns the CookieJar instance.

Return Value

CookieJar A CookieJar instance

in AbstractBrowser at line 202
Crawler getCrawler()

Returns the current Crawler instance.

Return Value

Crawler A Crawler instance

in AbstractBrowser at line 217
Response getInternalResponse()

Returns the current BrowserKit Response instance.

Return Value

Response A BrowserKit Response instance

in AbstractBrowser at line 237
object getResponse()

Returns the current origin response instance.

The origin response is the response instance that is returned by the code that handles requests.

Return Value

object A response instance

See also

doRequest()

in AbstractBrowser at line 252
Request getInternalRequest()

Returns the current BrowserKit Request instance.

Return Value

Request A BrowserKit Request instance

in AbstractBrowser at line 272
object getRequest()

Returns the current origin Request instance.

The origin request is the request instance that is sent to the code that handles requests.

Return Value

object A Request instance

See also

doRequest()

in AbstractBrowser at line 287
Crawler click(Link $link)

Clicks on a given link.

Parameters

Link $link

Return Value

Crawler

Clicks the first link (or clickable image) that contains the given text.

Parameters

string $linkText The text of the link or the alt attribute of the clickable image

Return Value

Crawler

in AbstractBrowser at line 319
Crawler submit(Form $form, array $values = [])

Submits a form.

Parameters

Form $form
array $values

Return Value

Crawler

in AbstractBrowser at line 340
Crawler submitForm(string $button, array $fieldValues = [], string $method = 'POST', array $serverParameters = [])

Finds the first form that contains a button with the given content and uses it to submit the given form field values.

Parameters

string $button The text content, id, value or name of the form
array $fieldValues Use this syntax: ['my_form[name]' => '...', 'my_form[email]' => '...']
string $method The HTTP method used to submit the form
array $serverParameters These values override the ones stored in $SERVER (HTTP headers must include a HTTP prefix as PHP does)

Return Value

Crawler

in AbstractBrowser at line 365
Crawler request(string $method, string $uri, array $parameters = [], array $files = [], array $server = [], 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

in AbstractBrowser at line 450
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

in AbstractBrowser at line 484
abstract protected object doRequest(object $request)

Makes a request.

Parameters

object $request An origin request instance

Return Value

object An origin response instance

in AbstractBrowser at line 493
protected getScript(object $request)

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

Parameters

object $request An origin request instance

Exceptions

LogicException When this abstract class is not implemented

in AbstractBrowser at line 505
protected object filterRequest(Request $request)

Filters the BrowserKit request to the origin one.

Parameters

Request $request The BrowserKit Request to filter

Return Value

object An origin request instance

in AbstractBrowser at line 517
protected Response filterResponse(object $response)

Filters the origin response to the BrowserKit one.

Parameters

object $response The origin response to filter

Return Value

Response An BrowserKit Response instance

in AbstractBrowser at line 533
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 AbstractBrowser at line 550
Crawler back()

Goes back in the browser history.

Return Value

Crawler

in AbstractBrowser at line 564
Crawler forward()

Goes forward in the browser history.

Return Value

Crawler

in AbstractBrowser at line 578
Crawler reload()

Reloads the current browser.

Return Value

Crawler

in AbstractBrowser at line 590
Crawler followRedirect()

Follow redirects?

Return Value

Crawler

Exceptions

LogicException If request was not a redirect

in AbstractBrowser at line 654
restart()

Restarts the client.

It flushes history and all cookies.

in AbstractBrowser at line 667
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 AbstractBrowser at line 714
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