[浪风推荐]php的memcache应用入门教程
所需环境:
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扩展。
测试代码:
- <?php
- //连接
- $mem = new Memcache;
- $mem->connect(“127.0.0.1″, 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();
- $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);
- $str=$row_news['biaoti'].$db->time_out($row_news['date_time']);
- while($row_news=$db->fetch_array($query)){
- $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);
浪风先分享这么多,以后会继续分享我的小工具给大家。分享万岁,技术永存。
[浪风推荐]php的memcache应用入门教程的更多相关文章
- [浪风推荐]CURL伪造IP和来源
给“刷票”的朋友提供了很好的换IP的方案,查了下,CURL确实很强悍的可以伪造IP和来源. 1.php 请求 2.php . 1.php代码: $ch = curl_init(); curl_seto ...
- [浪风推荐]javascritp中倒计定时器和循环定时器
在javascritp中,有两个关于定时器的专用函数,分别为: 1.倒计定时器:timename=setTimeout(“function();”,delaytime); 2.循环定时器:timena ...
- [浪风分享] PHP开发必看 我现在是这样编程的
我在做什么 曾经,我试过接到一些需求.一眼带过后,脑袋马上随着高昂的斗志沉溺在代码的世界中 ,马不停蹄地敲着键盘直到最后测试的完成.我从思绪中恢复过来,乍一看自己写的功能,和需求差了十万八千里,我TM ...
- 推荐10个适合初学者的 HTML5 入门教程
HTML5 作为下一代网站开发技术,无论你是一个 Web 开发人员或者想探索新的平台的游戏开发者,都值得去研究.借助尖端功能,技术和 API,HTML5 允许你创建响应性.创新性.互动性以及令人惊叹的 ...
- 【特别推荐】Node.js 入门教程和学习资源汇总
这篇文章与大家分享一批很有用的 Node.js 入门教程和学习资源.Node 是一个服务器端的 JavaScript 解释器,它将改变服务器应该如何工作的概念.它的目标是帮助程序员构建高度可伸缩的应用 ...
- [浪风JQuery开发]jquery最有意思的IFrame类似应用--值得深入研究
前几天一时兴起答应朋友的需求--做一个外国的企业网站: 本想做就做呗,可没想我辛辛苦苦用浪风认真php平台开发后,对方来一句我服务器不能安装其他程序,请给我用frame框架开发. 浪风那是一个苦字难言 ...
- 推荐 VS2010入门教程—鸡啄米
http://www.jizhuomi.com/catalog.asp?tags=VS2010 推荐 VS2010入门教程—鸡啄米,真的非常使用和经典!
- C++入门教程:大白话讲解,新手基础篇⭐⭐⭐(附源码及详解、视频课程资料推荐)
目录 C++教程 前言 视频教程 文字教程 集成开发环境(IDE) 编译器 工作原理 学习指南 入门书籍 进阶书籍 算法.竞赛书籍 教程 标准构建 程序解释 第一个C++程序--"hello ...
- 要web开发精品教程吗?免费无广告一百期连讲的那种-逐浪CMS前端开发100期入门教程全面开放
要web开发精品教程吗?免费无广告一百期连讲的那种-逐浪CMS前端开发100期入门教程全面开放 大师主讲 经验难得 由逐浪CMS首席架构师发哥老师,亲自主理讲解. 历时一年精心打造, 汇聚了互联网诞生 ...
随机推荐
- 转载:oracle11G 已开启监听,但远程连接依旧无监听解决过程
1.连接数据库显示无监听程序,首先查看服务器的oracle监听服务是否开启,服务名称:OracleOraDb11g_home1TNSListener(具体环境中可能不完全一样,但是认准TNSListe ...
- Coherence生产环境异常定位过程
8月1日前广西发生了一次地震, 8月份前又发生了好几次台风,估计对地下的光缆有点损害(比如5根断了2根之类),感觉家里的网速都慢了好多,在客户那里部署的coherence缓存环境也出现了问题,两台hp ...
- https://v2ex.com/t/170386
https://v2ex.com/t/170386 https://cnodejs.org/topic/5566952ad4ca459f5267ac59 https://segmentfault.co ...
- Android Handler,Loop,HandlerThread消息处理
博客标题也不知道写什么好,仅仅是近期有时候发现Handler,Loop,HandlerThread非常easy混淆,所以做了简单的笔记处理: 第一种 : 大概的意思给出说明图: watermark/2 ...
- 关于 iOS 证书,你必须了解的知识
收录待用,修改转载已取得腾讯云授权 最新腾讯云技术公开课直播,提问腾讯W3C代表,如何从小白成为技术专家?点击了解活动详情. 作者 |陈泽滨 编辑 | 顾乡 从事iOS开发几年,越来越发现,我们的开发 ...
- 百度地图-修改marker图标(icon)
百度地图-修改marker图标(icon) 学习了:https://blog.csdn.net/clh604/article/details/9412291/ 源码膜拜: var map = new ...
- seo关键字优化条例
SEO 第一: 标题关键字分析 分析和选择行业热门的关键字,并合理的应用于网站标题内及分布到各栏目页面和内页. 其实个人觉得标题.内容.以及与内容相关性链接必须要足.还有就是出现的层次感,例如: a) ...
- 修改注册表实现Windows自动登陆
昨天再修一条case时无意间发现这个case竟然要重启机器,并且要用指定的账户自动登陆Windows.然后就发现了,简单的修改下注册表就可以完成自动登陆了. 首先,在“run”里输入“regedit” ...
- POJ1274:The Perfect Stall(二分图最大匹配 匈牙利算法)
The Perfect Stall Time Limit: 1000MS Memory Limit: 10000K Total Submissions: 17895 Accepted: 814 ...
- 一个我用来上传代码到Github的 Shell 脚本
因为用git老是要敲许多命令.所以写了个小脚本.代码如下: #! /bin/sh echo Going to simpleWebtest... cd ~/softwaredevelopment/wor ...