| 123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119120121122123 |
- The `Predis\\Client` class
- --------------------------
- .. php:namespace:: Predis
- The `Client` class is the main class users interact with in Predis. The first
- thing you'll do to start communicating with Redis is instantiate a `Client`.
- Constructing a Client
- =====================
- The `Client` constructor takes two arguments. The first (``$parameters``) is a
- set of information about the Redis connection you'd like to make. The second
- (``$options``) is a set of options to configure the client.
- .. php:class:: Client
- .. php:method:: __construct($parameters = null, $options = null)
- Creates a new `Client` instance.
- :param $parameters: Connection parameters
- :param $options: Client options
- Connection Parameters
- '''''''''''''''''''''
- These parameters are used to control the behaviour of the underlying connection
- to Redis. They can be specified using a URI string::
- $client = new Predis\Client('tcp://127.0.0.1:6379?database=2')
- Or, using an associative array::
- $client = new Predis\Client(array(
- 'scheme' => 'tcp',
- 'host' => '127.0.0.1',
- 'port' => 6379,
- 'database' => 3
- ));
- By default, Predis supports a lengthy list of connection parameters.
- .. note::
- Since the client can use different :doc:`connection backends`, actual support
- for certain parameters depends on the value of ``scheme`` and the connection
- backends registered using the ``connections`` client option.
- ================== ============================================= ========= =========================================
- parameter description default supported by
- ================== ============================================= ========= =========================================
- scheme Instructs the client how to connect to Redis. tcp `Predis\\Connection\\StreamConnection`
- Supported values are: ``tcp``, ``unix``, `Predis\\Connection\\PhpiredisConnection`
- ``http``. Certain values such as ``http`` `Predis\\Connection\\WebdisConnection`
- change the underlying connection backend.
- ------------------ --------------------------------------------- --------- -----------------------------------------
- host IP address or hostname of the server. 127.0.0.1 `Predis\\Connection\\StreamConnection`
- Ignored when using the ``unix`` scheme. `Predis\\Connection\\PhpiredisConnection`
- `Predis\\Connection\\WebdisConnection`
- ------------------ --------------------------------------------- --------- -----------------------------------------
- port TCP port the server listens on. 6379 `Predis\\Connection\\StreamConnection`
- Ignored when using the ``unix`` scheme. `Predis\\Connection\\PhpiredisConnection`
- `Predis\\Connection\\WebdisConnection`
- ------------------ --------------------------------------------- --------- -----------------------------------------
- path Path of the UNIX domain socket the server is not set `Predis\\Connection\\StreamConnection`
- listening on, used only in combination with `Predis\\Connection\\PhpiredisConnection`
- the ``unix`` scheme.
- Example: ``/tmp/redis.sock``.
- ------------------ --------------------------------------------- --------- -----------------------------------------
- database Redis database to select when connecting. not set `Predis\\Connection\\StreamConnection`
- Its effect is the same of using `SELECT`_. `Predis\\Connection\\PhpiredisConnection`
- ------------------ --------------------------------------------- --------- -----------------------------------------
- password Password for accessing a password-protected not set `Predis\\Connection\\StreamConnection`
- Redis instance. Its effect is the same of `Predis\\Connection\\PhpiredisConnection`
- using `AUTH`_.
- ------------------ --------------------------------------------- --------- -----------------------------------------
- timeout Timeout to perform the connection to Redis. 5.0 `Predis\\Connection\\StreamConnection`
- Its value is expressed in seconds as a float `Predis\\Connection\\PhpiredisConnection`
- allowing sub-second resolution. `Predis\\Connection\\WebdisConnection`
- ------------------ --------------------------------------------- --------- -----------------------------------------
- read_write_timeout Timeout for read and write operations. platform `Predis\\Connection\\StreamConnection`
- Its value is expressed in seconds as a float dependent `Predis\\Connection\\PhpiredisConnection`
- allowing sub-second resolution.
- ------------------ --------------------------------------------- --------- -----------------------------------------
- async_connect Tells the client to perform the connection not set `Predis\\Connection\\StreamConnection`
- asynchronously without waiting for it to be (false)
- fully estabilished.
- ------------------ --------------------------------------------- --------- -----------------------------------------
- persistent The underlying socket is left intact after a not set `Predis\\Connection\\StreamConnection`
- GC collection or when the script terminates (false)
- (only when using FastCGI or php-fpm).
- ------------------ --------------------------------------------- --------- -----------------------------------------
- iterable_multibulk `Multi-bulk replies`_ are returned as PHP false `Predis\\Connection\\StreamConnection`
- iterable objects, making them streamable.
- ------------------ --------------------------------------------- --------- -----------------------------------------
- alias String used to identify a connection by name. not set Backend independent.
- This is useful with :doc:`clustering` and
- :doc:`replication`.
- ------------------ --------------------------------------------- --------- -----------------------------------------
- weight This is only used with :doc:`clustering` and not set Backend independent.
- determines the proportion of the load the
- corresponding server will bear relative to
- other nodes in the cluster.
- ------------------ --------------------------------------------- --------- -----------------------------------------
- user Username for HTTP authentication (`Webdis`_). not set `Predis\\Connection\\WebdisConnection`
- ------------------ --------------------------------------------- --------- -----------------------------------------
- pass Password for HTTP authentication (`Webdis`_). not set `Predis\\Connection\\WebdisConnection`
- ================== ============================================= ========= =========================================
- .. _SELECT: http://redis.io/commands/select
- .. _AUTH: http://redis.io/commands/auth
- .. _Multi-bulk replies: http://redis.io/topics/protocol#multi-bulk-reply
- .. _Webdis: http://webd.is/
- Users can also specify their own parameters, they will simply be ignored by the
- client but can be used later to pass additional information for custom purposes.
- Client Options
- ''''''''''''''
|