PHP 操作Memcached
PHP 操作 Memcached
## PHP Memcache 扩展安装 PHP Memcache 扩展包下载地址:http://pecl.php.net/package/memcache,你可以下载最新稳定包(stable)。 ```shell wget http://pecl.php.net/get/memcache-2.2.7.tgz tar -zxvf memcache-2.2.7.tgz cd memcache-2.2.7 /usr/local/php/bin/phpize ./configure --with-php-config=/usr/local/php/bin/php-config make && make install ``` 注意:/usr/local/php/ 为php的安装路径,需要根据你安装的实际目录调整。 安装成功后会显示你的memcache.so扩展的位置 最后我们需要把这个扩展添加到php中,打开你的php.ini文件在最后添加以下内容: ```shell [Memcache] extension_dir = "/usr/local/php/lib/php/extensions/no-debug-non-zts-20090626/" extension = memcache.so ``` 添加完后 重新启动php 检查安装结果,或者通过浏览器访问 phpinfo() 函数来查看 ```shell /usr/local/php/bin/php -m | grep memcache ``` ## PHP 连接 Memcached ```php <?php $memcache = new Memcache; //创建一个memcache对象 $memcache->connect('localhost', 11211) or die ("Could not connect"); //连接Memcached服务器 $memcache->set('key', 'test'); //设置一个变量到内存中,名称是key 值是test $get_value = $memcache->get('key'); //从内存中取出key的值 echo $get_value; ``` ## 常用操作 ```php <?php //连接Memcache $mem = new Memcache; $mem->connect("localhost", 11211); //保存数据 $mem->set('key1', 'This is first value', 0, 60); $val = $mem->get('key1'); echo "Get key1 value: " . $val ."<br>"; //替换数据 $mem->replace('key1', 'This is replace value', 0, 60); $val = $mem->get('key1'); echo "Get key1 value: " . $val . "<br>"; //保存数组数据 $arr = array('aaa', 'bbb', 'ccc', 'ddd'); $mem->set('key2', $arr, 0, 60); $val2 = $mem->get('key2'); echo "Get key2 value: "; print_r($val2); echo "<br>"; //删除数据 $mem->delete('key1'); $val = $mem->get('key1'); echo "Get key1 value: " . $val . "<br>"; //清除所有数据 $mem->flush(); $val2 = $mem->get('key2'); echo "Get key2 value: "; print_r($val2); echo "<br>"; //关闭连接 $mem->close(); ``` ## PHP Memcached操作类 - 官方手册 https://www.php.net/manual/zh/memcached.add.php ```php <?php Memcached::__construct — 创建一个Memcached实例 Memcached::addServer — 向服务器池中增加一个服务器 Memcached::addServers — 向服务器池中增加多台服务器 Memcached::getServerList — 获取服务器池中的服务器列表 Memcached::getStats — 获取服务器池的统计信息 Memcached::getVersion — 获取服务器池中所有服务器的版本信息 Memcached::getServerByKey — 获取一个key所映射的服务器信息 Memcached::getDelayedByKey — 从指定的服务器上请求多个元素 Memcached::isPersistent — 检查是否正在使用到memcache的持久连接 Memcached::isPristine —检查实例是否是最近创建的 Memcached::resetServerList — 从服务器列表中清除所有服务器 Memcached::quit — 关闭所有打开的链接。 ////////增 Memcached::set — 存储一个元素 Memcached::setByKey — 将元素存储到指定的服务器上 Memcached::setMulti — 存储多个元素 Memcached::setMultiByKey — 从指定的服务器上存储多个元素 Memcached::add — 向一个新的key下面增加一个元素 Memcached::addByKey — 在指定服务器上的一个新的key下增加一个元素 Memcached::append — 向已存在元素后追加数据 Memcached::appendByKey — 向指定服务器上已存在元素后追加数据 Memcached::prepend — 向一个已存在的元素前面追加数据 Memcached::prependByKey — 从指定的服务器上向一个已存在的元素前面追加数据 Memcached::decrement — 减小数值元素的值 Memcached::decrementByKey — 在指定服务器上减小数值元素的值 Memcached::increment — 增加数值元素的值 Memcached::incrementByKey — 从指定的服务器上增加数值元素的值 //////删 Memcached::delete — 删除一个元素 Memcached::deleteByKey — 从指定的服务器删除一个元素 Memcached::deleteMulti — 删除多个元素 Memcached::deleteMultiByKey — 从指定的服务器删除多个元素 Memcached::flush — 作废缓存中的所有元素 /////查 Memcached::fetch — 抓取下一个结果 Memcached::fetchAll — 抓取所有剩余的结果 Memcached::get — 检索一个元素 Memcached::getByKey — 从指定的服务器检索元素 Memcached::getAllKeys — 获取存储在所有服务器上的元素 Memcached::getDelayed — 请求多个元素 Memcached::getMulti — 检索多个元素 Memcached::getMultiByKey — 从特定服务器检索多个元素 Memcached::getOption — 获取Memcached的选项值 Memcached::getResultCode — 返回最后一次操作的结果代码 Memcached::getResultMessage — 返回最后一次操作的结果描述消息 /////改 Memcached::cas — 比较并交换值 Memcached::casByKey — 在指定服务器上比较并交换值 Memcached::replace — 替换已存在key下的元素 Memcached::replaceByKey — 从指定的服务器上替换已存在key下的元素 Memcached::setOption — 设置一个memcached选项 Memcached::setOptions — 设置多个Memcached选项 Memcached::setSaslAuthData — 设置用于身份验证的凭据 Memcached::touch — 设置项目新的过期时间 Memcached::touchByKey — 从指定的服务器上设置项目新的过期时间 ```
顶部
收展
底部
[TOC]
目录
PHP 操作 Memcached
相关推荐
Memcached教程