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 相关文章推荐
PHPWind 发帖回帖Api PHP版打包下载
Feb 08 PHP
php数据入库前清理 注意php intval与mysql的int取值范围不同
Dec 12 PHP
关于ob_get_contents(),ob_end_clean(),ob_start(),的具体用法详解
Jun 24 PHP
php实现多维数组中每个单元值(数字)翻倍的方法
Feb 16 PHP
php插入排序法实现数组排序实例
Feb 16 PHP
PHP中使用Memache作为进程锁的操作类分享
Mar 30 PHP
php通过淘宝API查询IP地址归属等信息
Dec 25 PHP
PHP中strpos、strstr和stripos、stristr函数分析
Jun 11 PHP
thinkPHP框架实现的短信接口验证码功能示例
Jun 20 PHP
PHP利用百度ai实现文本和图片审核
May 08 PHP
PHP使用HTML5 FormData对象提交表单操作示例
Jul 02 PHP
tp5递归 无限级分类详解
Oct 18 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中的日期及时间
2006/11/23 PHP
table标签的结构与合并单元格的实现方法
2013/07/24 PHP
php英文单词统计器
2016/06/23 PHP
简明json介绍
2008/09/28 Javascript
.net,js捕捉文本框回车键事件的小例子(兼容多浏览器)
2013/03/11 Javascript
js+div实现图片滚动效果代码
2014/02/10 Javascript
jQuery拖拽插件gridster使用指南
2015/04/21 Javascript
jquery ui resize 中border-box的bug修正
2015/04/26 Javascript
Node.js测试中的Mock文件系统详解
2016/11/21 Javascript
分享bootstrap学习笔记心得(组件及其属性)
2017/01/11 Javascript
angular2+node.js express打包部署的实战
2017/07/27 Javascript
Vue.js实现可配置的登录表单代码详解
2018/03/29 Javascript
JavaScript 斐波那契数列 倒序输出 输出100以内的质数代码实例
2019/09/11 Javascript
基于vue+echarts 数据可视化大屏展示的方法示例
2020/03/09 Javascript
详解vue之自行实现派发与广播(dispatch与broadcast)
2021/01/19 Vue.js
[52:09]2014 DOTA2华西杯精英邀请赛 5 25 NewBee VS DK第二场
2014/05/26 DOTA
[05:14]辉夜杯主赛事第二日 RECAP精彩回顾
2015/12/27 DOTA
python判断windows隐藏文件的方法
2014/03/21 Python
Python3 伪装浏览器的方法示例
2017/11/23 Python
利用Python2下载单张图片与爬取网页图片实例代码
2017/12/25 Python
使用python实现http及ftp服务进行数据传输的方法
2018/10/26 Python
scrapy数据存储在mysql数据库的两种方式(同步和异步)
2020/02/18 Python
详解python中的异常捕获
2020/12/15 Python
CSS3+JavaScript实现炫酷呼吸效果的示例代码
2020/06/15 HTML / CSS
Application Cache未缓存文件无法访问无法加载问题
2014/05/31 HTML / CSS
Roxy美国官网:澳大利亚冲浪、滑雪健身品牌
2016/07/30 全球购物
维德科技C#面试题笔试题
2015/12/09 面试题
山海经纬软件测试笔试题和面试题
2013/04/02 面试题
小学生班会演讲稿
2014/01/09 职场文书
物流管理专业求职信
2014/05/29 职场文书
2015年新教师个人工作总结
2015/10/14 职场文书
幼儿园大班教学反思
2016/03/02 职场文书
学生会2016感恩节活动小结
2016/04/01 职场文书
MySQL如何使用使用Xtrabackup进行备份和恢复
2021/06/21 MySQL
MYSQL事务的隔离级别与MVCC
2022/05/25 MySQL
MyBatis XPathParser解析器使用范例详解
2022/07/15 Java/Android