dykyi-roman / 在线访客计数器
在线访客计数器
dev-master
2017-10-01 10:22 UTC
Requires
- php: >=5.6
- predis/predis: ^1.1
Requires (Dev)
- phpunit/phpunit: ~6.0
This package is not auto-updated.
Last update: 2024-09-21 14:48:03 UTC
README
- 首先我们需要一个MySQL表来存储我们的信息
CREATE TABLE online_visitors( session_id CHAR(100) NOT NULL DEFAULT '', time INT(11) NOT NULL DEFAULT '0' );
或者使用Redis。
-
我们检查会话是否已经被启动,如果没有,那么启动会话
-
我们创建了两个变量,一个是当前时间,另一个包含当前时间减去n分钟
-
我们需要检查session_id是否已经被存储,因此我们查询数据库并查看它是否存在,如果不存在,我们将存储它,如果存在,我们将更新数据库中会话的时间
-
我们得到总会话数
-
然后我们检查会话是否在数据库中超过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);