• 欢迎访问搞代码网站,推荐使用最新版火狐浏览器和Chrome浏览器访问本网站!
  • 如果您觉得本站非常有看点,那么赶紧使用Ctrl+D 收藏搞代码吧

PHP如何获取用户每次操作的HTTP 请求的唯一性的request id 呢?

php 搞代码 3年前 (2022-01-25) 18次浏览 已收录 0个评论
文章目录[隐藏]

PHP如何获取用户每次操作的HTTP 请求的唯一性的request id 呢?
无论多少人,要求每次点击 都是全局唯一的ID

回复内容:

PHP如何获取用户每次操作的HTTP 请求的唯一性的request id 呢?
无论多

!本文来源gaodai.ma#com搞#代!码(网

搞gaodaima代码少人,要求每次点击 都是全局唯一的ID

每次一个请求过来,你都生成唯一的 id,可以作为这个 request 的唯一 id,可以使用 uuid or guid

你好,LZ:
看到你的问题,我首先想到的是主键id的概念, 它可以唯一标识每条记录。所以楼主的需求就是要找到一个递增id,用于标识每一个请求。

<code>方案一:(利用PHP内置全局变量$_SERVER中的参数REQUEST_TIME)   <?php    date_default_timezone_set('PRC');        sleep(5);    echo date('Y-m-d H:i:s',time()); //获取当前系统的时间戳        echo '<hr />';        echo date('Y-m-d H:i:s', $_SERVER['REQUEST_TIME']);//获取本次请求的开始时间</code>

输出结果:

<code>2016-04-05 11:27:06 2016-04-05 11:27:01  //请求时间,与休眠后输出date相差5秒,符合预期</code>

注:如果请求量巨大,秒级别无法标识,可以用REQUEST_TIME_FLOAT参数,可以精确到微秒级。

方案二: 利用php内置函数uniqid() ,生成唯一id。 或者这样子来生成: md5(time()).mt_rand(1,1000)

<code><?phpecho $_SERVER['REQUEST_TIME_FLOAT'];</code>

phpsessid

1,开启session,$sid = session_id();
2.获取当前请求的时间 $rid = $_SERVER['REQUEST_TIME_FLOAT']
3.唯一请求等于 $unqidId = md5($sid . $rid) //(如果还觉得不可靠再加个随机数)


搞代码网(gaodaima.com)提供的所有资源部分来自互联网,如果有侵犯您的版权或其他权益,请说明详细缘由并提供版权或权益证明然后发送到邮箱[email protected],我们会在看到邮件的第一时间内为您处理,或直接联系QQ:872152909。本网站采用BY-NC-SA协议进行授权
转载请注明原文链接:PHP如何获取用户每次操作的HTTP 请求的唯一性的request id 呢?

喜欢 (0)
[搞代码]
分享 (0)
发表我的评论
取消评论

表情 贴图 加粗 删除线 居中 斜体 签到

Hi,您需要填写昵称和邮箱!

  • 昵称 (必填)
  • 邮箱 (必填)
  • 网址