当前位置:首页 > PHP

php uniqid js 实现

2026-03-13 11:04:15PHP

PHP uniqid 的 JavaScript 实现

PHP 的 uniqid 函数生成基于当前时间微秒级的唯一 ID,默认情况下返回 13 位字符串。以下是 JavaScript 中的等效实现方法:

php uniqid js 实现

方法一:基于时间戳与随机数

function uniqid(prefix = "", moreEntropy = false) {
  const timestamp = Date.now().toString(16);
  const random = Math.floor(Math.random() * 0x10000).toString(16);
  let id = prefix + timestamp + random;

  if (moreEntropy) {
    const extra = Math.floor(Math.random() * 0x1000000).toString(16);
    id += "." + extra;
  }
  return id;
}

方法二:精确微秒级实现(Node.js 环境)

在 Node.js 中可使用 process.hrtime() 获取更高精度时间:

php uniqid js 实现

function uniqid(prefix = "", moreEntropy = false) {
  const [sec, nanosec] = process.hrtime();
  const timestamp = (sec * 1000 + Math.floor(nanosec / 1000000)).toString(16);
  const random = Math.floor(Math.random() * 0x10000).toString(16);
  let id = prefix + timestamp + random;

  if (moreEntropy) {
    const extra = Math.floor(Math.random() * 0x1000000).toString(16);
    id += "." + extra;
  }
  return id;
}

浏览器环境注意事项

浏览器端无法获取真正的微秒级精度,但可通过 performance.now() 提高精度:

function uniqid(prefix = "", moreEntropy = false) {
  const time = performance.now().toString(16).replace(".", "");
  const random = Math.floor(Math.random() * 0x10000).toString(16);
  let id = prefix + time + random;

  if (moreEntropy) {
    const extra = Math.floor(Math.random() * 0x1000000).toString(16);
    id += "." + extra;
  }
  return id;
}

输出示例

console.log(uniqid());          // 类似 "6065f3a7b1a4"
console.log(uniqid("pre_"));    // 类似 "pre_6065f3a7b1b2"
console.log(uniqid("", true));  // 类似 "6065f3a7b1c3.12d4e5"

标签: phpuniqid
分享给朋友:

相关文章

php实现树

php实现树

PHP实现树结构的方法 在PHP中实现树结构通常可以通过递归或迭代的方式完成。以下是几种常见的实现方法: 递归实现树结构 递归是处理树结构的自然方式,尤其适用于具有未知深度的树。 class Tr…

git php实现

git php实现

Git 与 PHP 的集成实现 使用 PHP 执行 Git 命令 通过 PHP 的 exec()、shell_exec() 或 passthru() 函数可以直接调用 Git 命令,适用于服务器端操作…

php实现上传

php实现上传

PHP 文件上传实现 HTML 表单设置 创建一个包含文件上传字段的 HTML 表单,确保表单的 enctype 属性设置为 multipart/form-data,这是文件上传必需的设置。 <…

php实现跳转

php实现跳转

PHP 实现页面跳转的方法 在 PHP 中实现页面跳转有多种方式,以下是常见的几种方法及其适用场景: 使用 header() 函数 通过 header() 函数发送 HTTP 头部信息实现跳转。注意…

php实现文章

php实现文章

PHP实现文章管理功能 在PHP中实现文章管理功能通常涉及数据库操作、表单处理和页面展示。以下是实现文章管理的基本步骤: 数据库设计 创建articles表,包含字段如id、title、conten…

php 购物车实现session

php 购物车实现session

PHP 购物车实现(基于 Session) 在 PHP 中,使用 Session 实现购物车功能是一种常见方法。Session 可以跨页面存储用户数据,适合临时保存购物车信息。 初始化 Sessio…