PHP+Memcache实现wordpress访问总数统计(非插件)


Posted in PHP onJuly 04, 2014

以前写过一篇博文,利用 PHP 和 Memcache 实现网站,以下链接查看:https://3water.com/article/51825.htm
今天就把该功能用到 wordpress 中,并实现把访问次数保存到数据库中。

MySQL 语句

首先在参数表中,添加访问次数的默认数据

// 获取所有浏览次数
function get_all_visit_number()
{
 $mc = new Memcache ();
 
 // 使用wordpress自带wpdb类
 global $wpdb;
 
 // 参数表
 $table = "wp_options";
 
 // 连接memcache
 $mc->connect ( "127.0.0.1", 11211 );
 
 // 获取浏览次数
 $visit_number = $mc->get ( 'visit_number' );
 
 // Memcache 中是否存有访问次数
 if (!$visit_number) {

 // 不存在时,查询数据库 
 $querystr = "SELECT `option_value` FROM " .$table. " WHERE `option_name`='visit_number'";
 $results = $wpdb->get_results($querystr);
 
 // 把数据库中存储的值赋予memcache变量
 $visit_number = intval($results[0]->option_value);
 }
 
 // 设置浏览次数
 $mc->set ( 'visit_number', ++$visit_number);
 
 // 获取浏览次数
 $visit_number = $mc->get ( 'visit_number' );
 

 // 每达100次访问量,更新到数据库
 if ($visit_number % 100 == 0) {

 // 使用wordpress自带wpdb类
 $data_array = array(
  'option_value' => $visit_number
 );
 
 $where_clause = array(
  'option_name' => 'visit_number'
 );
 
 $wpdb->update($table,$data_array,$where_clause);
 }
 
 // 关闭memcache连接
 $mc->close ();
 
 return $visit_number;
}
PHP 相关文章推荐
PHP乱码问题,UTF-8乱码常见问题小结
Apr 09 PHP
一个好用的PHP验证码类实例分享
Dec 27 PHP
ThinkPHP实现一键清除缓存方法
Jun 26 PHP
CMS中PHP判断系统是否已经安装的方法示例
Jul 26 PHP
php生成随机数的三种方法
Sep 10 PHP
PHP使用stream_context_create()模拟POST/GET请求的方法
Apr 02 PHP
[原创]PHP字符串中插入子字符串方法总结
May 06 PHP
WordPress分页伪静态加html后缀
Jun 08 PHP
Yii框架创建cronjob定时任务的方法分析
May 23 PHP
php使用curl伪造浏览器访问操作示例
Sep 30 PHP
Laravel获取当前请求的控制器和方法以及中间件的例子
Oct 11 PHP
PHP ElasticSearch做搜索实例讲解
Feb 05 PHP
php+memcache实现的网站在线人数统计代码
Jul 04 #PHP
PHP轻量级数据库操作类Medoo增加、删除、修改、查询例子
Jul 04 #PHP
CodeIgniter安全相关设置汇总
Jul 03 #PHP
php使用pack处理二进制文件的方法
Jul 03 #PHP
PHP源码分析之变量的存储过程分解
Jul 03 #PHP
ThinkPHP让分页保持搜索状态的方法
Jul 02 #PHP
ThinkPHP实现批量删除数据的代码实例
Jul 02 #PHP
You might like
php木马攻击防御之道
2008/03/24 PHP
在Laravel5.6中使用Swoole的协程数据库查询
2018/06/15 PHP
js各种验证文本框输入格式(正则表达式)
2010/10/22 Javascript
基于jquery的复制网页内容到WORD的实现代码
2011/02/16 Javascript
在js(jquery)中获得文本框焦点和失去焦点的方法
2012/12/04 Javascript
防止文件缓存的js代码
2013/01/10 Javascript
Jquery通过Ajax访问XML数据的小例子
2013/11/18 Javascript
js实现同一页面多个运动效果的方法
2015/04/10 Javascript
JavaScript监听文本框回车事件并过滤文本框空格的方法
2015/04/16 Javascript
node.js操作mysql(增删改查)
2015/07/24 Javascript
实例讲解JavaScript的Backbone.js框架中的View视图
2016/05/05 Javascript
hovertree插件实现二级树形菜单(简单实用)
2016/12/28 Javascript
jQuery实现鼠标经过显示动画边框特效
2017/03/24 jQuery
Vue实现带进度条的文件拖动上传功能
2018/02/23 Javascript
微信小程序实现swiper切换卡内嵌滚动条不显示的方法示例
2018/12/20 Javascript
详解vue中使用微信jssdk
2019/04/19 Javascript
微信小程序自定义单项选择器样式
2019/07/25 Javascript
[49:02]KG vs Infamous 2019国际邀请赛淘汰赛 败者组BO1 8.20.mp4
2020/07/19 DOTA
python自动化工具日志查询分析脚本代码实现
2013/11/26 Python
Python中if __name__ == "__main__"详细解释
2014/10/21 Python
Python进行数据提取的方法总结
2016/08/22 Python
Python pyinotify日志监控系统处理日志的方法
2018/03/08 Python
解决pandas无法在pycharm中使用plot()方法显示图像的问题
2018/05/24 Python
通过python3实现投票功能代码实例
2019/09/26 Python
python对Excel按条件进行内容补充(推荐)
2019/11/24 Python
python3的UnicodeDecodeError解决方法
2019/12/20 Python
纯CSS实现设置半个字符的样式
2014/07/03 HTML / CSS
音乐系毕业生自荐信
2013/10/27 职场文书
实习求职信
2013/12/01 职场文书
孝老爱亲模范事迹
2014/01/24 职场文书
初中生评语大全
2014/04/24 职场文书
党的群众路线对照检查材料思想汇报
2014/09/25 职场文书
班主任开场白
2015/06/01 职场文书
文艺委员竞选稿
2015/11/19 职场文书
2016入党心得体会范文
2016/01/06 职场文书
MySQL外键约束(FOREIGN KEY)案例讲解
2021/08/23 MySQL