iis服务器助手广告广告
返回顶部
首页 > 资讯 > 后端开发 > PHP编程 >如何在php中生成唯一ID
  • 902
分享到

如何在php中生成唯一ID

2023-06-14 23:06:45 902人浏览 安东尼
摘要

这篇文章将为大家详细讲解有关如何在PHP中生成唯一ID,文章内容质量较高,因此小编分享给大家做个参考,希望大家阅读完这篇文章后对相关知识有一定的了解。php有什么用php是一个嵌套的缩写名称,是英文超级文本预处理语言,它的语法混合了C、Ja

这篇文章将为大家详细讲解有关如何在PHP中生成唯一ID,文章内容质量较高,因此小编分享给大家做个参考,希望大家阅读完这篇文章后对相关知识有一定的了解。

php有什么用

php是一个嵌套的缩写名称,是英文超级文本预处理语言,它的语法混合了C、Java、Perl以及php自创新的语法,主要用来做网站开发,许多小型网站都用php开发,因为php是开源的,从而使得php经久不衰。

uniqid()函数基于以微妙计的当前时间,生成一个唯一的ID。由于生成唯一ID与微妙时间关联,因此生成ID的唯一性非常可靠。

生成的唯一ID默认返回的字符串有13个字符长,如果再结合MD5()函数,生成的唯一ID可靠性将更高,这种生成的ID比随机性的ID最大优点在于可实现排序,特别是一些需要存储在数据库中的值。当然在这里也可以加入随机数。

下面主要介绍4种生成唯一ID的方法:

md5(time().mt_rand(1,1000000))

注意:这种方法有一定的概率会出现重复

php内置函数uniqid()

uniqid()函数基于以微妙的当前时间,生成一个唯一的ID。

  echo uniqid();  echo uniqid();  echo uniqid(); OUTPUT:    5a4b62dd4aeea    5a4b62dd4aff7    5a4b62dd4b069

w3school参考手册有一句话:"由于基于系统时间,通过该函数生成的 ID 不是最佳的。如需生成绝对唯一的 ID,请使用 md5() 函数"。

(免费视频教程:php视频教程)

结合md5()函数生成一个唯一的ID

     echo md5(uniqid());OUTPUT:    0ac3D6e99b7f5290c93d730eaf9d7d94

手动去处理,官方给予的案例

public function create_guid($namespace = '') {       static $guid = '';      $uid = uniqid("", true);      $data = $namespace;      $data .= $_SERVER['REQUEST_TIME'];      $data .= $_SERVER['Http_USER_AGENT'];      $data .= $_SERVER['LOCAL_ADDR'];      $data .= $_SERVER['LOCAL_PORT'];      $data .= $_SERVER['REMOTE_ADDR'];      $data .= $_SERVER['REMOTE_PORT'];      $hash = strtoupper(hash('ripemd128', $uid . $guid . md5($data)));      $guid = '{' .          substr($hash, 0, 8) .          '-' .          substr($hash, 8, 4) .          '-' .          substr($hash, 12, 4) .          '-' .          substr($hash, 16, 4) .          '-' .          substr($hash, 20, 12) .          '}';      return $guid;     }

返回结果类似:E2DFFFB3-571E-6CFC-4B5C-9FEDAAF2EFD7

关于如何在php中生成唯一ID就分享到这里了,希望以上内容可以对大家有一定的帮助,可以学到更多知识。如果觉得文章不错,可以把它分享出去让更多的人看到。

--结束END--

本文标题: 如何在php中生成唯一ID

本文链接: https://www.lsjlt.com/news/275672.html(转载时请注明来源链接)

有问题或投稿请发送至: 邮箱/279061341@qq.com    QQ/279061341

本篇文章演示代码以及资料文档资料下载

下载Word文档到电脑,方便收藏和打印~

下载Word文档
猜你喜欢
  • 如何在php中生成唯一ID
    这篇文章将为大家详细讲解有关如何在php中生成唯一ID,文章内容质量较高,因此小编分享给大家做个参考,希望大家阅读完这篇文章后对相关知识有一定的了解。php有什么用php是一个嵌套的缩写名称,是英文超级文本预处理语言,它的语法混合了C、Ja...
    99+
    2023-06-14
  • 怎么用php生成唯一ID
    本篇内容主要讲解“怎么用php生成唯一ID”,感兴趣的朋友不妨来看看。本文介绍的方法操作简单快捷,实用性强。下面就让小编来带大家学习“怎么用php生成唯一ID”吧!  php生成唯一ID的应用场景非常普遍,...
    99+
    2024-04-02
  • Redis唯一ID生成器如何实现
    这篇“Redis唯一ID生成器如何实现”文章的知识点大部分人都不太理解,所以小编给大家总结了以下内容,内容详细,步骤清晰,具有一定的借鉴价值,希望大家阅读完这篇文章能有所收获,下面我们一起来看看这篇“Redis唯一ID生成器如何实现”文章吧...
    99+
    2023-07-02
  • PHP利用雪花(SnowFlake)算法生成唯一ID
    目录一、雪花算法原理解析1. 分布式ID常见生成策略2. 雪花算法的结构二、PHP源码实现案例1.demo12.demo2这个算法的好处很简单可以在每秒产生约400W个不同的16位数...
    99+
    2024-04-02
  • MySQL怎么生成唯一的server-id
    这篇文章给大家分享的是有关MySQL怎么生成唯一的server-id的内容。小编觉得挺实用的,因此分享给大家做个参考,一起跟随小编过来看看吧。前言我们都知道MySQL用server-id来一的标识某个数据库...
    99+
    2024-04-02
  • Python使用UUID库生成唯一ID
    UUID是128位的全局唯一标识符,通常由32字节的字符串表示。它可以保证时间和空间的唯一性,也称为GUID,全称为:UUID —— Universally Unique IDentifier,Python 中叫 UUID。它通过MAC地...
    99+
    2023-01-31
    Python UUID ID
  • 详解如何利用Redis实现生成唯一ID
    目录一、摘要二、方案实践2.1、引入 Redis 组件2.2、添加 redis 环境配置2.3、编写服务验证逻辑,通过 aop 代理方式实现2.4、在相关的业务接口上,增加SubmitLimit注解即可三、小结一、摘要 ...
    99+
    2022-11-19
    Redis生成唯一ID Redis 唯一ID
  • java如何使用预分配法生成唯一ID
    小编给大家分享一下java如何使用预分配法生成唯一ID,相信大部分人都还不怎么了解,因此分享这篇文章给大家参考一下,希望大家阅读完这篇文章后大有收获,下面让我们一起去了解一下吧!在项目中经常有生成唯一ID的业务需求。作为唯一标识方便后续查找...
    99+
    2023-06-05
  • PHP怎么利用雪花算法生成唯一ID
    这篇文章主要讲解了“PHP怎么利用雪花算法生成唯一ID”,文中的讲解内容简单清晰,易于学习与理解,下面请大家跟着小编的思路慢慢深入,一起来研究和学习“PHP怎么利用雪花算法生成唯一ID”吧!一、雪花算法原理解析1. 分布式ID常见生成策略分...
    99+
    2023-06-30
  • python 生成唯一id的四种方式
    目录1.使用UUID2.mongodb的ObjectId3.雪花算法 Snowflake4.时间戳id4.1、获取秒级时间戳与毫秒级时间戳、微秒级时间戳4.2 获取当前日期时间4.3...
    99+
    2023-02-28
    python 生成唯一id python 唯一id
  • JS生成唯一id方式之UUID和NanoID
    目录一、为什么 NanoID 正在取代 UUID二、js如何生成三、NanoID的方式前言: 唯一id有了更好的方式,那就是NanoID,今天这篇文章记录一下NanoID 正在取代...
    99+
    2024-04-02
  • python生成唯一id的方式有哪些
    本篇内容主要讲解“python生成唯一id的方式有哪些”,感兴趣的朋友不妨来看看。本文介绍的方法操作简单快捷,实用性强。下面就让小编来带大家学习“python生成唯一id的方式有哪些”吧!1.使用UUIDUUID应该是大家耳熟能详的一个东西...
    99+
    2023-07-05
  • js动态生成唯一id的三种方法
    目录一. 引入时间戳,生成可控长度的随机数二. JS 生成随机三、ID生成器NanoID下面是一些补充一. 引入时间戳,生成可控长度的随机数 随机数长度控制,定义一个长度变量(len...
    99+
    2023-05-18
    js动态生成唯一id js唯一id
  • Redis生成全局唯一ID的实现方法
    目录简介:特性:生成规则: ID生成类:测试类:简介: 全局唯一ID生成器是一种在分布式系统下用来生成全局唯一ID的工具 特性: 唯一性高性能安全性高可用递增性 生成规则:...
    99+
    2024-04-02
  • php如何生成字符串唯一不重复
    小编给大家分享一下php如何生成字符串唯一不重复,相信大部分人都还不怎么了解,因此分享这篇文章给大家参考一下,希望大家阅读完这篇文章后大有收获,下面让我们一起去了解一下吧!php生成字符串唯一不重复的方法:1、当前时间戳进行md5加密,截取...
    99+
    2023-06-20
  • php怎么生成唯一订单号
    在PHP中,可以通过多种方式生成唯一订单号,以下是一种常见的方法:```php$orderNumber = uniqid();```...
    99+
    2023-08-15
    php
  • redis如何生成唯一订单号
    在Redis中生成唯一订单号可以使用Redis的自增命令INCR来实现。 具体的步骤如下: 在Redis中设置一个自增的键,作为订...
    99+
    2023-10-24
    redis
  • springboot集成redis并生成全局唯一索引ID的方法
    本篇内容主要讲解“springboot集成redis并生成全局唯一索引ID的方法”,感兴趣的朋友不妨来看看。本文介绍的方法操作简单快捷,实用性强。下面就让小编来带大家学习“springboot集成redis并生成全局唯一索引ID的方法”吧!...
    99+
    2023-06-29
  • springboot集成redis并使用redis生成全局唯一索引ID
    部署redis Windows下搭建Reids本地集群,可参考https://www.jb51.net/article/242520.htm springboot集成 redis p...
    99+
    2024-04-02
  • Go开源项目分布式唯一ID生成系统
    目录前言项目背景项目使用HTTP 方式gRPC 方式本地开发项目架构前言 今天跟大家介绍一个开源项目:id-maker,主要功能是用来在分布式环境下生成唯一 ID。上周停更了一周,也...
    99+
    2024-04-02
软考高级职称资格查询
编程网,编程工程师的家园,是目前国内优秀的开源技术社区之一,形成了由开源软件库、代码分享、资讯、协作翻译、讨论区和博客等几大频道内容,为IT开发者提供了一个发现、使用、并交流开源技术的平台。
  • 官方手机版

  • 微信公众号

  • 商务合作