php 统计一周数据,php统计近一周和近30天的用户数据

阅读: 评论:0

php 统计一周数据,php统计近一周和近30天的用户数据

php 统计一周数据,php统计近一周和近30天的用户数据

先上一张效果图

这边用的是echarts插件/

上代码(小白写的 别追求什么屌逼代码,就是冗余的面向过程,不服你来咬我)

按周排

按月排

zhou();

function zhou() {

var myChart = echarts.ElementById('main'));

$(".week").attr("class","btnweek week active");

$(".month").attr("class","btnweek month");

$.get('?act=welcome&op=index&get_data=week',function(data){

myChart.setOption(data);

},'json');

}

function yue(){

var myChart = echarts.ElementById('main'));

// 异步加载数据

$(".week").attr("class","btnweek week");

$(".month").attr("class","btnweek month active");

$.get('?act=welcome&op=index&get_data=month',function(data){

myChart.setOption(data);

},'json');

}

这些是html代码,需要引入一个erchars.js文件 可以从上面网址down下来,接下来上统计的代码

/*

*

* VIP列表

*

*/

public function indexOp()

{

$model_shop = Model('shop');

$model_admin = Model('admin');

$model_member = Model('member');

$model_ap = Model('ap');

$user=$this->getAdminInfo();

$admin=$model_admin->getOneAdmin($user["id"]);

if($admin["admin_area"]){

$condition["areacode"]=array("in",$admin["admin_area"]);

}

//ap

$shop_id = $model_shop->getShopList($condition, '*');

$sid=array();

foreach($shop_id as $shid){

$sid[]=$shid["id"];

}

$condition_ap["shop_id"]=array("in",$sid);

if ($_GET['get_data']=='week') {

echo $this->get_json_arr(6);

}else if ($_GET['get_data']=='month') {

echo $this->get_json_arr(30);

}else{

Tpl::showpage('welcome.index');

}

}

public function get_json_arr($num=6){

$model_shop = Model('shop');

$model_ap = Model('ap');

//统计商铺

for($i=$num;$i>=0;$i--){

$daystr=date('Y-m-d', strtotime("-$i day"));

$searchstr="TO_DAYS(from_unixtime(addtime,'%Y-%m-%d'))=TO_DAYS('".$daystr."')";

$shopCount=$model_shop->where($searchstr)->count();

$shopDayCountArray[]=$shopCount;

}

//统计ap

for($i=$num;$i>=0;$i--){

$daystr=date('Y-m-d', strtotime("-$i day"));

$searchstr="TO_DAYS(from_unixtime(addtime,'%Y-%m-%d'))=TO_DAYS('".$daystr."')";

$apCount=$model_ap->where($searchstr)->count();

$dateArray[]=date('m-d', strtotime("-$i day"));

$apDayCountArray[]=$apCount;

}

// echo "

";

// print_r($dateArray);die;

if ($num==6) {

$title='近一周的商铺和AP的统计';

}else{

$title='近一月的商铺和AP的统计';

}

//处理json包

$json_arr = array(

'title'=>array('text'=>$title),

'tooltip'=>array('trigger'=>'axis'),

'legend'=>array('data'=>array('商铺','AP')),

'toolbox'=>array(

'show'=>true,

'feature'=>array(

'dataZoom'=>array('yAxisIndex'=>'none'),

'dataView'=>array('readOnly'=>false),

'magicType'=>array('type'=>array('line','bar')),

'restore'=>array(),

'saveAsImage'=>array()

),

),

'xAxis'=>array('type'=>'category','boundaryGap'=>false,'data'=>$dateArray),

'yAxis'=>array('type'=>'value','interval'=>1,'min'=>0,'axisLabel'=>array('formatter'=>'{value} 个')),

'series'=>array(

array(

'name'=>'商铺',

'type'=>'line',

'data'=>$shopDayCountArray

),

array(

'name'=>'AP',

'type'=>'line',

'data'=>$apDayCountArray

)

)

);

return json_encode($json_arr);exit;

}

本文发布于:2024-01-30 13:04:54,感谢您对本站的认可!

本文链接:https://www.4u4v.net/it/170659109620204.html

版权声明:本站内容均来自互联网,仅供演示用,请勿用于商业和其他非法用途。如果侵犯了您的权益请与我们联系,我们将在24小时内删除。

标签:数据   用户   php
留言与评论(共有 0 条评论)
   
验证码:

Copyright ©2019-2022 Comsenz Inc.Powered by ©

网站地图1 网站地图2 网站地图3 网站地图4 网站地图5 网站地图6 网站地图7 网站地图8 网站地图9 网站地图10 网站地图11 网站地图12 网站地图13 网站地图14 网站地图15 网站地图16 网站地图17 网站地图18 网站地图19 网站地图20 网站地图21 网站地图22/a> 网站地图23