TokyoTyrant::putKeep

Puts a record

&reftitle.description; public `TokyoTyrant` `TokyoTyrant::putKeep` `mixed` `keys` `string` `value`

Puts a key-value pair into the database or multiple key-value pairs. If `keys` is string then the second parameter value defines the value. The second parameter is mandatory if `keys` is a string. If the key already exists this method throws an exception indicating that the records exists.

&reftitle.parameters;

`keys`

- A `string` key or an `array` of key-value pairs

`value`

- The `string` value

&reftitle.returnvalues;

This method returns a reference to the current object and throws TokyoTyrantException on failure.

&reftitle.examples;

### `tokyotyrant::putKeep` example

    <?php
    /* Connect to a database on default port */
    $tt = new TokyoTyrant("localhost");

    /* Create a new key */
    $tt->put("key", "value");

    try {
        $tt->putKeep("key", "new value");
    } catch (TokyoTyrantException $e) {
        if ($e->getCode() === TokyoTyrant::TTE_KEEP) {
            echo "Existing record! Not modified\n";
        } else {
            echo "Error: " , $e->getMessage() , "\n";
        }
    }
    echo $tt->get("key");
    ?>

&example.outputs;

    Existing record! Not modified
    value

&reftitle.seealso;

- `TokyoTyrant::put`
- `TokyoTyrant::putCat`