我有以下代码来统计我的 PHP 网站上的访问者数量。它在使用 WampServer 的本地开发计算机上运行良好,但当我将文件上传到我的托管帐户进行测试时,我意识到它无法正常工作。
我得到的数字非常高,并且还注意到会话永远不会被删除,因此它们只会不断累积。
这是一个简单的会话计数器。有更好的方法吗?有人可以向我展示或指出某篇文章吗?谢谢你!
<?php
//------------------------------------------------------------
// VISITORS ONLINE COUNTER
//------------------------------------------------------------
if (!isset($_SESSION)) {
session_start();
}
function visitorsOnline()
{
$session_path = session_save_path();
$visitors = 0;
$handle = opendir($session_path);
while(( $file = readdir($handle) ) != false)
{
if($file != "." && $file != "..")
{
if(preg_match('/^sess/', $file))
{
$visitors++;
}
}
}
return $visitors;
}
?>
如果这是共享主机,那么您正在计算每个人的会话文件,而不仅仅是您自己的。这就是为什么这个数字很大并且很大程度上与在线人数无关your site.
本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系:hwhale#tublm.com(使用前将#替换为@)