# mysqlnd_qc_set_storage_handler

(PECL mysqlnd_qc >= 1.0.0)

mysqlnd_qc_set_storage_handler — Change current storage handler

### 说明

mysqlnd_qc_set_storage_handler ( string `$handler` ) : bool

Sets the storage handler used by the query cache. A list of available storage handler can be obtained from mysqlnd_qc_get_available_handlers(). Which storage are available depends on the compile time configuration of the query cache plugin. The default storage handler is always available. All other storage handler must be enabled explicitly when building the extension.

### 参数

`handler`

  Handler can be of type string representing the name of a built-in storage handler or an object of type mysqlnd_qc_handler_default. The names of the built-in storage handler are default, APC, MEMCACHE, sqlite.

### 返回值

成功时返回 `TRUE`， 或者在失败时返回 `FALSE`。

If changing the storage handler fails a catchable fatal error will be thrown. The query cache cannot operate if the previous storage handler has been shutdown but no new storage handler has been installed.

### 范例

Example #1 mysqlnd_qc_set_storage_handler() example

The example shows the output from the built-in default storage handler. Other storage handler may report different data.

    <?php
    var_dump(mysqlnd_qc_set_storage_handler("memcache"));

    if (true === mysqlnd_qc_set_storage_handler("default"))
      printf("Default storage handler activated");

    /* Catchable fatal error */
    var_dump(mysqlnd_qc_set_storage_handler("unknown"));
    ?>

以上例程会输出：

    bool(true)
    Default storage handler activated
    Catchable fatal error: mysqlnd_qc_set_storage_handler(): Unknown handler 'unknown' in (file) on line (line)

### 参见

- Installation
- mysqlnd_qc_get_available_handlers() - Returns a list of available storage handler