php网页统计图实现,WEB前端数据统计图实现教程及代码

这几天要做数据统计,听louis介绍了一个jquery框架,现在也介绍给大家。

外国,真是一个神奇的地方。不多说。

4323bc637665093ba79a1ed9027cd3d5.png

数据报表折线图

然后这个jquery插件内置大量dome,看都能看会。

细节在后台PHP处理数据,然后返回给前端JS,一般是用JSON传值,但这个jquery插件处理数据都是用字符串,所以要特别注意一下

这样,我就把我写的PHP处理类也共享出来

class TotalAction extends Action{

public function getData($table,$field)

{

//获取统计数据,实例化数据模型

$model = M($table);

//获得当天的日期

$nowDate = date("Y-m-d");

//获取七天

$beforDate = date("Y-m-d",strtotime('-7 day'));

//获取当间的数据

$map["del"] = array("eq","0");

$map[$field] = array("between",array($beforDate,$nowDate));

$data = $model->where($map)->field($field)->order($field." desc")->select();

return $this->hanldData($data,$nowDate,$beforDate,$field);

}

//获取时间间距

private function space($nowDate,$beforDate)

{

//开始的时间

$endday=((int)substr($nowDate,8,2));

//结束的时间

$beforday = ((int)substr($beforDate,8,2));

for($i=$beforday;$i

{

$daystack[] = $i;

}

return $daystack;

}

//对数据进行统计分类处理

private function hanldData($data,$nowDate,$beforDate,$field)

{

$daystack = $this->space($nowDate,$beforDate);

//获取日期页面

foreach($daystack as $val)

{

foreach($data as $key=>$value)

{

//获取这个日期所在在日期号

$day=((int)substr($value[$field],8,2));

//筛选出所有数据

if($day == $val)

{

$countDay[$val] ++;

}

else

{

if(!isset($countDay[$val]))

{

$countDay[$val]= 0;

}

}

}

}

return $countDay;

}

//获取当前日期

public function getDate($data,$year="",$month="")

{

//获取当年

if(empty($year))

{

$year =date("Y");

}

if(empty($month))

{

$month = date("m");

}

//开始处理数据

foreach($data as $key=>$value)

{

$date[] = $year."-".$month."-".$key;

}

return $this->arraytostr($date);

}

//获取具体数据量

public function getNum($data)

{

if(is_array($data))

{

$str = implode(",",$data);

}

return $str;

}

//将数组转换成字符串

private function arraytostr($array)

{

if(is_array($array))

{

$str = implode("\",\"",$array);

}

return $str;

}

}

?>

类是基于thinkphp开发的,怎么用?很简单,看getData方法。只需要传入两个值,一个是要统计的表名,另一个是要统计的字段。

那个jquery插件连接在这里。 highChartsjs

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值