php – 创建访客唯一ID?

前端之家收集整理的这篇文章主要介绍了php – 创建访客唯一ID?前端之家小编觉得挺不错的,现在分享给大家,也给大家做个参考。
我计划创建访问者唯一ID并命名为日志文件,因为现在我使用IP访问者作为日志文件名即logs / 127.0.0.1.PHP但我认为这还不够,因为一些访问者使用共享PC的IP地址.

访问者日志文件本身作为访问者自身配置的设置位置,因此我计划添加另一个唯一ID来标识每个不同的访问者,所以让我们说日志文件
logs / 127.0.0.0.1-t3451dq.PHP,-t3451dq作为唯一ID
所以只要访问者在我的网站上浏览唯一的日志文件作为每个用户的设置配置(因为我使用纯文本)

目前我使用:

<?
$filename = "./logs/".$_SERVER['REMOTE_ADDR'].".PHP" ; //out put logs/127.0.0.1.PHP
$data stripcslashes($data);
// each Visitor configuration here...
// bla...bla...

/* Writing file configurations */
    $buat = fopen($filename,"w+");
    fwrite($buat,"$data");
    fclose($buat);
?>

所以我需要$filename添加$unique ID作为其日志文件名称.任何想法如何做到这一点?

试试 uniqid.

您可以将此唯一ID存储在用户会话或cookie中.

示例(未测试)

session_start();
if(!isset($_SESSION['uniqueID']))
{
    $_SESSION['uniqueID'] = uniqid();
}
$filename = "./logs/".$_SESSION['uniqueID'].$_SERVER['REMOTE_ADDR'].".PHP" ;

使用会话意味着如果同一个用户关闭他们的浏览器(或会话到期),他们将获得一个新ID,这可能是您想要的,也可能不是.

如果您想要一个更持久的跟踪器,那么您可能更好地使用cookie,并将ID存储在cookie中(如果不存在cookie,则创建一个新ID).

if(!isset($_COOKIE['uniqueID']))
{
    $expire=time()+60*60*24*30;//however long you want
    setcookie('uniqueID',uniqid(),$expire);
}
$filename = "./logs/".$_COOKIE['uniqueID'].$_SERVER['REMOTE_ADDR'].".PHP" ;

如果您不能使用cookies / session,那么您可能需要在URL查询字符串中传递ID,例如mypage.PHP?ID = 35dfgdfg3434

原文链接:https://www.f2er.com/php/240279.html

猜你在找的PHP相关文章