在我的网页上计算唯一身份访问者的最佳方法是什么?

时间:2018-06-28 12:32:54

标签: php cookies

我创建了一个php类来统计网页上的唯一身份访问者,我的想法是创建一个cookie,该cookie会保留在访问者计算机上,直到今天的23:59,如果该cookie退出,则意味着该网站已经被访问过并且不执行任何操作(如果不存在),然后创建Cookie并创建新访问帐户

这是我用于创建代码的代码,如果退出cookie则返回false,如果没有创建cookie则返回true。

**

function CriakCookieDia(){  
    if (!isset($_COOKIE[sha1('visita')])){  
        $tempoAteAoFimDoDia=strtotime('tomorrow') - time();
        setcookie(sha1('visita'), true,  time()+$tempoAteAoFimDoDia);
        return true;    
    }else{
        return false;
    }
 }

**

但是我没有得到预期的结果,而不是唯一的访问,这就像我计算了网站上的观看次数一样,就像我没有在创建Cookie一样,我的方法有什么问题?

1 个答案:

答案 0 :(得分:0)

到期时间必须是特定日期/时间的时间戳。

此代码给出了1970年的日期。

strtotime('tomorrow') - time(); // 01/01/1970 11:15:01

因此,您的代码有点太复杂了,请将Cookie的过期时间设置为strtotime('tomorrow'),这样可以将明天的日期定为00:00:00,即明天的开始

运行于28/06/2018 13:40:00的此代码将给出:

echo date('d/m/Y H:i:s',strtotime('tomorrow')); // 29/06/2018 00:00:00

试试这个

function CriakCookieDia(){  
    if (!isset($_COOKIE[sha1('visita')])){  
        setcookie(sha1('visita'), true, strtotime('tomorrow'));
        return true;    
    }else{
        return false;
    }
}