您好,欢迎访问一九零五行业门户网

解析php中memcache的应用_PHP教程

所需环境:
php 5.3.3
apache 2.2.7
mysql 5.5.8
相关文档下载:点击下载
解压memcached_1.2.5文档,cmd下执行memcached.exe -d -install
将php5.3_vc6_memcachedll文档解压,将php_memcache.dll文件复制到php安装目录的ext文件目录中。
然后在php.ini 当中填上这句话:extension=php_memcache.dll
在phpinfo()下查看,是否引用了memcache扩展。
测试代码:
复制代码 代码如下:
connect(127.0.0.1, 11211);
//保存数据
$mem->set('key1', 'this is first value', 0, 60);
$val = $mem->get('key1');
echo get key1 value: . $val .
;
//替换数据
$mem->replace('key1', 'this is replace value', 0, 60);
$val = $mem->get('key1');
echo get key1 value: . $val .
;
//保存数组
$arr = array('aaa', 'bbb', 'ccc', 'ddd');
$mem->set('key2', $arr, 0, 60);
$val2 = $mem->get('key2');
echo get key2 value: ;
print_r($val2);
echo
;
//删除数据
$mem->delete('key1');
$val = $mem->get('key1');
echo get key1 value: . $val .
;
//清除所有数据
$mem->flush();
$val2 = $mem->get('key2');
echo get key2 value: ;
print_r($val2);
echo
;
//关闭连接
$mem->close();
$memcachehost = '192.168.10.1';
$memcacheport = 11211;
$memcachelife = 60;
$memcache = new memcache;
$memcache->connect($memcachehost,$memcacheport) or die (could not connect);
$query=select * from user limit 10;
$key=md5($query);
if(!$memcache->get($key))
{
        $conn=mysql_connect(192.168.30.1,root,passwd);
        mysql_select_db(users);
        $result=mysql_query($query);
        while ($row=mysql_fetch_assoc($result))
        {
            $arr[]=$row;
        }
        $f = 'db';
        $memcache->add($key,serialize($arr),0,30);
        $data = $arr ;
}
else{
        $f = 'mem';
    $data_mem=$memcache->get($key);
    $data = unserialize($data_mem);
}
echo $f;
echo ;
//print_r($data);
foreach($data as $a)
{
        echo $a[user_id]._.$a[email];
        echo ;
}
?>
新闻系统的应用:
复制代码 代码如下:
//==============memcache
$memcachehost = '127.0.0.1';
$memcacheport = 11211;
$memcachelife = 60;
$memcache = new memcache;
$memcache->connect($memcachehost,$memcacheport) or die (could not connect);
//==============新闻
 $sql=select id,title,left(title,16) as biaoti,date_time from `p_newsbase` where shenhe='1' order by id desc limit 7 ;
 $query=$db->query($sql);
 $key=md5($query);
 while($row_news=$db->fetch_array($query)){
  $str=$row_news['biaoti'].$db->time_out($row_news['date_time']);
  $sm_news[]=array(name=>$str,title=>$row_news['title'],id=>$row_news['id'],date_time=>$row_news['date_time']);
 }
 if(!$memcache->get($key)){
  $memcache->add($key,serialize($sm_news),0,$memcachelife);
 }else{
  $data_mem=$memcache->get($key);
    $sm_news = unserialize($data_mem);
 }
 $smarty->assign(sm_news,$sm_news);
http://www.bkjia.com/phpjc/327650.htmlwww.bkjia.comtruehttp://www.bkjia.com/phpjc/327650.htmltecharticle所需环境: php 5.3.3 apache 2.2.7 mysql 5.5.8 相关文档下载: 点击下载 解压memcached_1.2.5文档,cmd下执行memcached.exe -d -install 将php5.3_vc6_memcachedll文...
其它类似信息

推荐信息