# Memcache::add

(PECL memcache >= 0.2.0)

Memcache::add — Add an item to the server

### Description

Memcache::add ( string `$key` , mixed `$var` [, int `$flag` [, int `$expire` ]] ) : bool

Memcache::add() stores variable `var` with `key` only if such key doesn't exist at the server yet. Also you can use memcache_add() function.

### Parameters

`key`

  The key that will be associated with the item.

`var`

  The variable to store. Strings and integers are stored as is, other types are stored serialized.

`flag`

  Use `MEMCACHE_COMPRESSED` to store the item compressed (uses zlib).

`expire`

  Expiration time of the item. If it's equal to zero, the item will never expire. You can also use Unix timestamp or a number of seconds starting from current time, but in the latter case the number of seconds may not exceed 2592000 (30 days).

### Return Values

Returns `TRUE` on success or `FALSE` on failure. Returns `FALSE` if such key already exist. For the rest Memcache::add() behaves similarly to Memcache::set().

### Examples

Example #1 Memcache::add() example

`<?php
$memcache_obj = memcache_connect("localhost", 11211);
/* procedural API */
memcache_add($memcache_obj, 'var_key', 'test variable', false, 30);
/* OO API */
$memcache_obj->add('var_key', 'test variable', false, 30);
?>`

### See Also

- Memcache::set() - Store data at the server
- Memcache::replace() - Replace value of the existing item