<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN" "http://www.w3.org/TR/html4/loose.dtd"> <html> <head> <meta http-equiv="content-type" content="text/html; charset=UTF-8"> <title>Store data at the server</title> </head> <body><div class="manualnavbar" style="text-align: center;"> <div class="prev" style="text-align: left; float: left;"><a href="memcache.replace.html">Memcache::replace</a></div> <div class="next" style="text-align: right; float: right;"><a href="memcache.setcompressthreshold.html">Memcache::setCompressThreshold</a></div> <div class="up"><a href="class.memcache.html">Memcache</a></div> <div class="home"><a href="index.html">PHP Manual</a></div> </div><hr /><div id="memcache.set" class="refentry"> <div class="refnamediv"> <h1 class="refname">Memcache::set</h1> <p class="verinfo">(PECL memcache >= 0.2.0)</p><p class="refpurpose"><span class="refname">Memcache::set</span> — <span class="dc-title">Store data at the server</span></p> </div> <div class="refsect1 description" id="refsect1-memcache.set-description"> <h3 class="title">Description</h3> <div class="methodsynopsis dc-description"> <span class="type">bool</span> <span class="methodname"><strong>Memcache::set</strong></span> ( <span class="methodparam"><span class="type">string</span> <code class="parameter">$key</code></span> , <span class="methodparam"><span class="type"><a href="language.pseudo-types.html#language.types.mixed" class="type mixed">mixed</a></span> <code class="parameter">$var</code></span> [, <span class="methodparam"><span class="type">int</span> <code class="parameter">$flag</code></span> [, <span class="methodparam"><span class="type">int</span> <code class="parameter">$expire</code></span> ]] )</div> <p class="para rdfs-comment"> <span class="function"><strong>Memcache::set()</strong></span> stores an item <em><code class="parameter">var</code></em> with <em><code class="parameter">key</code></em> on the memcached server. Parameter <em><code class="parameter">expire</code></em> is expiration time in seconds. If it's 0, the item never expires (but memcached server doesn't guarantee this item to be stored all the time, it could be deleted from the cache to make place for other items). You can use <strong><code>MEMCACHE_COMPRESSED</code></strong> constant as <em><code class="parameter">flag</code></em> value if you want to use on-the-fly compression (uses zlib). <blockquote class="note"><p><strong class="note">Note</strong>: <p class="para"> Remember that resource variables (i.e. file and connection descriptors) cannot be stored in the cache, because they cannot be adequately represented in serialized state. </p> </p></blockquote> Also you can use <span class="function"><strong>memcache_set()</strong></span> function. </p> </div> <div class="refsect1 parameters" id="refsect1-memcache.set-parameters"> <h3 class="title">Parameters</h3> <p class="para"> <dl> <dt> <span class="term"><em><code class="parameter">key</code></em></span> <dd> <p class="para"> The key that will be associated with the item. </p> </dd> </dt> <dt> <span class="term"><em><code class="parameter">var</code></em></span> <dd> <p class="para"> The variable to store. Strings and integers are stored as is, other types are stored serialized. </p> </dd> </dt> <dt> <span class="term"><em><code class="parameter">flag</code></em></span> <dd> <p class="para"> Use <strong><code>MEMCACHE_COMPRESSED</code></strong> to store the item compressed (uses zlib). </p> </dd> </dt> <dt> <span class="term"><em><code class="parameter">expire</code></em></span> <dd> <p class="para"> 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). </p> </dd> </dt> </dl> </p> </div> <div class="refsect1 returnvalues" id="refsect1-memcache.set-returnvalues"> <h3 class="title">Return Values</h3> <p class="para"> Returns <strong><code>TRUE</code></strong> on success or <strong><code>FALSE</code></strong> on failure. </p> </div> <div class="refsect1 examples" id="refsect1-memcache.set-examples"> <h3 class="title">Examples</h3> <p class="para"> <div class="example" id="example-4422"> <p><strong>Example #1 <span class="function"><strong>Memcache::set()</strong></span> example</strong></p> <div class="example-contents"> <div class="phpcode"><code><span style="color: #000000"> <span style="color: #0000BB"><?php<br /></span><span style="color: #FF8000">/* procedural API */<br /><br />/* connect to memcached server */<br /></span><span style="color: #0000BB">$memcache_obj </span><span style="color: #007700">= </span><span style="color: #0000BB">memcache_connect</span><span style="color: #007700">(</span><span style="color: #DD0000">'memcache_host'</span><span style="color: #007700">, </span><span style="color: #0000BB">11211</span><span style="color: #007700">);<br /><br /></span><span style="color: #FF8000">/*<br />set value of item with key 'var_key'<br />using 0 as flag value, compression is not used<br />expire time is 30 seconds<br />*/<br /></span><span style="color: #0000BB">memcache_set</span><span style="color: #007700">(</span><span style="color: #0000BB">$memcache_obj</span><span style="color: #007700">, </span><span style="color: #DD0000">'var_key'</span><span style="color: #007700">, </span><span style="color: #DD0000">'some variable'</span><span style="color: #007700">, </span><span style="color: #0000BB">0</span><span style="color: #007700">, </span><span style="color: #0000BB">30</span><span style="color: #007700">);<br /><br />echo </span><span style="color: #0000BB">memcache_get</span><span style="color: #007700">(</span><span style="color: #0000BB">$memcache_obj</span><span style="color: #007700">, </span><span style="color: #DD0000">'var_key'</span><span style="color: #007700">);<br /><br /></span><span style="color: #0000BB">?></span> </span> </code></div> </div> </div> <div class="example" id="example-4423"> <p><strong>Example #2 <span class="function"><strong>Memcache::set()</strong></span> example</strong></p> <div class="example-contents"> <div class="phpcode"><code><span style="color: #000000"> <span style="color: #0000BB"><?php<br /></span><span style="color: #FF8000">/* OO API */<br /><br /></span><span style="color: #0000BB">$memcache_obj </span><span style="color: #007700">= new </span><span style="color: #0000BB">Memcache</span><span style="color: #007700">;<br /><br /></span><span style="color: #FF8000">/* connect to memcached server */<br /></span><span style="color: #0000BB">$memcache_obj</span><span style="color: #007700">-></span><span style="color: #0000BB">connect</span><span style="color: #007700">(</span><span style="color: #DD0000">'memcache_host'</span><span style="color: #007700">, </span><span style="color: #0000BB">11211</span><span style="color: #007700">);<br /><br /></span><span style="color: #FF8000">/*<br />set value of item with key 'var_key', using on-the-fly compression<br />expire time is 50 seconds<br />*/<br /></span><span style="color: #0000BB">$memcache_obj</span><span style="color: #007700">-></span><span style="color: #0000BB">set</span><span style="color: #007700">(</span><span style="color: #DD0000">'var_key'</span><span style="color: #007700">, </span><span style="color: #DD0000">'some really big variable'</span><span style="color: #007700">, </span><span style="color: #0000BB">MEMCACHE_COMPRESSED</span><span style="color: #007700">, </span><span style="color: #0000BB">50</span><span style="color: #007700">);<br /><br />echo </span><span style="color: #0000BB">$memcache_obj</span><span style="color: #007700">-></span><span style="color: #0000BB">get</span><span style="color: #007700">(</span><span style="color: #DD0000">'var_key'</span><span style="color: #007700">);<br /><br /></span><span style="color: #0000BB">?></span> </span> </code></div> </div> </div> </p> </div> <div class="refsect1 seealso" id="refsect1-memcache.set-seealso"> <h3 class="title">See Also</h3> <p class="para"> <ul class="simplelist"> <li class="member"> <span class="function"><a href="memcache.add.html" class="function" rel="rdfs-seeAlso">Memcache::add()</a> - Add an item to the server</span></li> <li class="member"> <span class="function"><a href="memcache.replace.html" class="function" rel="rdfs-seeAlso">Memcache::replace()</a> - Replace value of the existing item</span></li> </ul> </p> </div> </div><hr /><div class="manualnavbar" style="text-align: center;"> <div class="prev" style="text-align: left; float: left;"><a href="memcache.replace.html">Memcache::replace</a></div> <div class="next" style="text-align: right; float: right;"><a href="memcache.setcompressthreshold.html">Memcache::setCompressThreshold</a></div> <div class="up"><a href="class.memcache.html">Memcache</a></div> <div class="home"><a href="index.html">PHP Manual</a></div> </div></body></html>