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类中Static方法效率测试代码
Oct 17 PHP
PHP中获取内网用户MAC地址(WINDOWS/linux)的实现代码
Aug 11 PHP
php 获取本地IP代码
Jun 23 PHP
PHP 5.3新增魔术方法__invoke概述
Jul 23 PHP
php实现通用的信用卡验证类
Mar 24 PHP
PHP使用strstr()函数获取指定字符串后所有字符的方法
Jan 07 PHP
php正则判断是否为合法身份证号的方法
Mar 16 PHP
thinkphp5.0自定义验证规则使用方法
Nov 16 PHP
利用PHP判断是手机移动端还是PC端访问的函数示例
Dec 14 PHP
thinkPHP框架实现的无限回复评论功能示例
Jun 09 PHP
php服务器的系统详解
Oct 12 PHP
laravel实现一个上传图片的接口,并建立软链接,访问图片的方法
Oct 12 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实现指定字段的多维数组排序函数分享
2015/03/09 PHP
php文件上传类完整实例
2016/05/14 PHP
CI框架数据库查询缓存优化的方法
2016/11/21 PHP
javascript 模拟JQuery的Ready方法实现并出现的问题
2009/12/06 Javascript
基于jquery的让textarea自适应高度的插件
2010/08/03 Javascript
各浏览器对click方法的支持差异小结
2011/07/31 Javascript
Javascript中数组sort和reverse用法分析
2014/12/30 Javascript
JavaScript基础函数整理汇总
2015/01/30 Javascript
Bootstrap布局之栅格系统详解
2016/06/13 Javascript
第二篇Bootstrap起步
2016/06/21 Javascript
Three.js学习之几何形状
2016/08/01 Javascript
Node.js 数据加密传输浅析
2016/11/16 Javascript
nodejs搭建本地服务器并访问文件的方法
2017/03/03 NodeJs
详解nodejs微信公众号开发——2.自动回复
2017/04/10 NodeJs
jQuery常见面试题之DOM操作详析
2017/07/05 jQuery
React-Router如何进行页面权限管理的方法
2017/12/06 Javascript
微信小程序实现按字母排列选择城市功能
2019/11/25 Javascript
javascript设计模式 ? 装饰模式原理与应用实例分析
2020/04/14 Javascript
[14:20]刀塔大凶女神互压各路奇葩屌丝
2014/05/16 DOTA
[48:32]2018DOTA2亚洲邀请赛 3.31 小组赛 A组 LGD vs VG
2018/04/01 DOTA
[40:29]2018DOTA2亚洲邀请赛 4.7总决赛 LGD vs Mineski 第一场
2018/04/10 DOTA
python生成日历实例解析
2014/08/21 Python
用python处理图片之打开\显示\保存图像的方法
2018/05/04 Python
django 在原有表格添加或删除字段的实例
2018/05/27 Python
python爬虫开发之Request模块从安装到详细使用方法与实例全解
2020/03/09 Python
完美解决pyinstaller打包报错找不到依赖pypiwin32或pywin32-ctypes的错误
2020/04/01 Python
英国床和浴室商场:Bed & Bath Emporium
2018/05/20 全球购物
最新自我评价范文
2013/11/16 职场文书
学习党章思想汇报
2014/01/07 职场文书
晚会邀请函范文
2014/01/24 职场文书
自荐书4要点
2014/01/25 职场文书
煤矿安全协议书
2014/08/20 职场文书
小学教研工作总结2015
2015/05/13 职场文书
银行中层干部培训心得体会
2016/01/11 职场文书
Django debug为True时,css加载失败的解决方案
2021/04/24 Python
JS的深浅复制详细
2021/10/16 Javascript