dykyi-roman/在线访客计数器

dev-master 2017-10-01 10:22 UTC

This package is not auto-updated.

Last update: 2024-09-21 14:48:03 UTC


README

  1. 首先我们需要一个MySQL表来存储我们的信息
CREATE TABLE online_visitors(
	session_id CHAR(100) NOT NULL DEFAULT '',
	time INT(11) NOT NULL DEFAULT '0'
);

或者使用Redis。

  1. 我们检查会话是否已经被启动,如果没有,那么启动会话

  2. 我们创建了两个变量,一个是当前时间,另一个包含当前时间减去n分钟

  3. 我们需要检查session_id是否已经被存储,因此我们查询数据库并查看它是否存在,如果不存在,我们将存储它,如果存在,我们将更新数据库中会话的时间

  4. 我们得到总会话数

  5. 然后我们检查会话是否在数据库中超过10分钟,如果是,那么我们将删除它。

安装

Composer

安装此扩展的首选方式是通过 Composer

运行

composer require dykyi-roman/online-visitors-counter "dev-master"

或者添加

"dykyi-roman/online-visitors-counter": "master"

到你的 composer.json 文件的require部分

驱动支持

  • Redis
  • Mysql

未来计划

  • 支持MSSQL驱动
  • 支持Memcached驱动

用法

use Dykyi\Driver\MySQLDB;
use Dykyi\DBFactory;
use Dykyi\VisitorsCounter;

$dbFactory = new DBFactory();
$dbFactory->setDriver(MySQLDB::class);
$dataBase   = $dbFactory->makeDB(['127.0.0.1','homestead','homestead','secret']);
$repository = $dbFactory->getRepository($dataBase);
echo VisitorsCounter::getCount($repository);

作者

Dykyi Roman,邮箱:mr.dukuy@gmail.com