首页 / PHP / php统计文章排行示例_PHP
php统计文章排行示例_PHP
内容导读
互联网集市收集整理的这篇技术教程文章主要介绍了php统计文章排行示例_PHP,小编现在分享给大家,供广大互联网技能从业者学习和参考。文章包含2659字,纯文字阅读大概需要4分钟。
内容图文
![php统计文章排行示例_PHP](/upload/InfoBanner/zyjiaocheng/252/5ffe951d20d94fa8a6f28f7f6cd78aee.jpg)
/**
*
* 统计软件与文章等月、周、当天排行
*
* $field_id(文章ID)
*/
//统计月、周、当天排行的方法
require_once(dirname(__FILE__)."/../include/common.inc.php");
function countdown($field_id){
date_default_timezone_set('Asia/Shanghai'); //设置默认时区
global $dsql;
$re_total = 1;
$tableName = 'dede_tongji';
$nowDateArray = getdate(time());
$sql_tongji = "select * from `$tableName` where aid=$field_id";
$rs = $dsql->ExecuteNoneQuery2($sql_tongji);
//如果不存在此篇文章信息,则新插入一条
if($rs <= 0){
//获取栏目ID值
$sql_typeid = "select typeid from `dede_archives` where id=$field_id";
$t_row = $dsql->GetOne($sql_typeid);
$query = " INSERT INTO `$tableName` VALUES($field_id,$t_row[typeid],1,1,1,1,$nowDateArray[0]); ";
$dsql->ExecNoneQuery($query);
}else{
$result = $dsql->GetOne($sql_tongji);
$oldTimeStamp = $result['lasttime']; //最后点击时间
$m_total = $result['m_total']; //月点击
$w_total = $result['w_total']; //周点击
$d_total = $result['d_total']; //日点击
$t_total = $result['t_total']; //总点击
$oldDateArray = getdate($oldTimeStamp);
//统计当月
if($nowDateArray["year"] == $oldDateArray["year"] && $nowDateArray["mon"] == $oldDateArray["mon"]){
$m_total++;
}else{
$m_total = 1;
}
//统计本周
$tmpStartDate = mktime(0,0,0,$nowDateArray[ "mon"],$nowDateArray[ "mday"],$nowDateArray[ "year"]) - ($nowDateArray[ "wday "] * 86400);
$tmpEndDate = mktime(23,59,59,$nowDateArray[ "mon"],$nowDateArray[ "mday"],$nowDateArray[ "year"]) + ((6 - $nowDateArray[ "wday"]) * 86400);
if($oldTimeStamp >= $tmpStartDate && $oldTimeStamp <= $tmpEndDate){
$w_total++;
}else{
$w_total = 1;
}
//统计今日
$dayStart =mktime(0,0,0,$nowDateArray[ "mon"],$nowDateArray[ "mday"],$nowDateArray[ "year"]); //当天开始时间戳
$dayEnd =mktime(23,59,59,$nowDateArray[ "mon"],$nowDateArray[ "mday"],$nowDateArray[ "year"]); //当天结束时间戳
if($oldTimeStamp >= $dayStart && $oldTimeStamp <= $dayEnd){
$d_total++;
}else{
$d_total = 1;
}
$t_total++;
//更新统计数
$dsql->ExecuteNoneQuery("update $tableName set m_total=$m_total,w_total=$w_total,d_total=$d_total,t_total=$t_total,lasttime=$nowDateArray[0] where aid=$field_id");
$dsql->ExecuteNoneQuery("update dede_archives set click=$t_total where id=$field_id");
$re_total = $t_total;
}
return $re_total;
}
countdown($aid); //方法调用
/*
//mysql表结构
CREATE TABLE IF NOT EXISTS `dede_tongji` (
`aid` int(11) NOT NULL,
`cid` smallint(5) NOT NULL,
`tid` smallint(5) NOT NULL,
`m_total` int(11) NOT NULL DEFAULT '1',
`w_total` int(11) NOT NULL DEFAULT '1',
`d_total` int(11) NOT NULL DEFAULT '1',
`t_total` int(11) NOT NULL DEFAULT '1',
`lasttime` int(12) NOT NULL,
PRIMARY KEY (`aid`)
) ENGINE=MyISAM DEFAULT CHARSET=latin1;
*/
?>
内容总结
以上是互联网集市为您收集整理的php统计文章排行示例_PHP全部内容,希望文章能够帮你解决php统计文章排行示例_PHP所遇到的程序开发问题。 如果觉得互联网集市技术教程内容还不错,欢迎将互联网集市网站推荐给程序员好友。
内容备注
版权声明:本文内容由互联网用户自发贡献,该文观点与技术仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请发送邮件至 gblab@vip.qq.com 举报,一经查实,本站将立刻删除。
内容手机端
扫描二维码推送至手机访问。