一、針對 yii2 的操作
1、首先新建一張 visit 表
然后用 gii 生成 Visit 模型
2、在 Visit 模型中創建 ExitVisit 靜態方法
3、在你的前台布局文件 main.php 中添加以下代碼
4、在 Visit 模型中創建 visitNum 靜態方法
5、在你想要展示訪問人數的頁面添加以下代碼
頁面效果如下:
二、針對 mysql 的操作:利用 mysql 的定時任務於零點自動統計當天訪問人數,保存到另一張表visit_count
1、新建表 visit_count
2、創建 mysql 函數:saveVisitNum 過程
CREATE DEFINER=`root`@`localhost` PROCEDURE `saveVistNum`() BEGIN INSERT INTO visit_count (nums,created_time) VALUES((SELECT COUNT(id) from visit_day), (select date_sub(curdate(),interval 1 day))); DELETE FROM visit_day; ALTER TABLE visit_day AUTO_INCREMENT =1; END
注釋:由於當天零點統計的是昨天的訪問人數,所以時間必須為:select date_sub(curdate(),interval 1 day)
3、創建 mysql 事件 saveVisitNum 於每天零點執行步驟2中的函數
CREATE DEFINER=`root`@`localhost` EVENT `saveVistNum` ON SCHEDULE EVERY 1 DAY STARTS '2016-07-18 00:00:00' ON COMPLETION PRESERVE ENABLE DO CALL saveVistNum()
4、開啟事件
(1)開啟:set global event_scheduler=1;
(2)查看是否開啟成功:show variables like '%sche%';