最新消息: 新版网站上线了!!!

thinkphp中使用Memcache的详细教程

thinkphp memcache的使用
标签: thinkphp memcache php 缓存    分类: PHP
1、下载并安装memcache
 (1)window下安装memcache. 下载memcached.exed:/memcached/memcached.exe.在运行cmd 输入         
 d:/memcached/memcached.exe -d install安装 。
(2)运行d:/memcached/memcached.exe -d start 启动memcache3)下载php_memcache.dllphp安装目录扩展目录 php\ext4)修改php.ini 加入 extension=php_memcache.dll 重启apache.查看phpinfo.php 如果有memcache模块 则   
  说明安装成功
 
2thinkphpmemcache 的使用
 
(1ThinkPHP/conf/convention.php 修改缓存类型
 
      'DATA_CACHE_TYPE'       => 'Memcache',  // 数据缓存类型,
       
      支持: File|Db|Apc|Memcache|Shmop|Sqlite|Xcache|Apachenote|Eaccelerator2thinkphp官方下载扩展ThinkPHP_Extend_3.1.2/Extend/Driver/Cache/CacheMemcache.class.php 保存到   
  ThinkPHP/Lib/Driver/Cache/CacheMemcache.class.php3)测试: S('test','memcache');$test = S('test'); echo $test;
     输出memcache 测试成功。
      
      
      
windows操作系统下安装memcache的步骤:
 
这里我把memcache.exe文件放在了d盘根目录下
 
cmd 进入了dos命令的操作窗口
 
接着输入 D:
 
会显示D:\>
 
说明已经进入了d盘
 
接着输入
 
D:memcached.exe -d install
 
就完成了安装
 
接下来
 
php_memcache.dll文件放在php配置文件中的ext文件下
 
php.ini配置文件中添加: extension=php_memcache.dll
 
最后:控制面板-》管理工具-》服务
 
查看memcache服务是否启动了
 
 
 
memcachedwindows7上的安装问题
 
错误:
 
通过cmd命令行进入到D:\webEve\memcached(下载后的解压目录)
 
运行 memcached.exe -d install
 
报错“ failed to install service or service already installed”
 
解决方法:
 
管理员身份安装,首先找出cmd.exe的原文件
 
右击以管理员身份运行,接下来就OK.
 
Windows下的Memcache安装:
 
1. 下载memcachewindows稳定版,解压放某个盘下面,比如在D:\webEve\memcached
 
2. 在终端(也即cmd命令界面)下输入 ‘D:\webEve\memcached\memcached.exe -d install’ 安装
 
  
 
3. 再输入:'D:\webEve\memcached\memcached.exe -d start’ 启动。NOTE:
 
以后memcached将作为windows的一个服务每次开机时自动启动。这样服务器端已经安装完毕了。
 
如果按装成功了:
 
打开控制面板-》管理工具-》服务
 
如果看到了:
 
 
 
thinkphp下的sql查询中memcache的使用
 
$data=null;
         
$data['status']=1;
 
$rs=M('news')->where($data)->order('id desc')->select();
 
S('newss',$rs);
 
$test = S('newss');
 
dump(C('DATA_CACHE_TYPE'));//string 'Memcache' (length=8)读取配置文件 ,文件的缓存方式为memcache
 
dump($test);    //从memcache缓存中读取数据
 
config下的配置参数如下:
 
/**
<?php
$arr1 = array(
 
    'DATA_CACHE_TYPE' => 'Memcache',
 
    'MEMCACHE_HOST'   =>  '',
 
    'DATA_CACHE_TIME' => '3600',
);
$arr2 = include("./config.inc.php");
// 入口文件 相对位置。
return array_merge($arr1,$arr2);
?>

转载请注明:谷谷点程序 » thinkphp中使用Memcache的详细教程