位置: 编程技术 - 正文

PHP 随机数 C扩展随机数(php生成随机字符串)

编辑:rootadmin

推荐整理分享PHP 随机数 C扩展随机数(php生成随机字符串),希望有所帮助,仅作参考,欢迎阅读内容。

文章相关热门搜索词:php生成随机字符串,php随机数字,php随机一言,php随机一言,php随机一言,php随机数字,php随机数生成,php随机数组,内容如对您有帮助,希望把文章链接给更多的朋友!

由于要用到固定长度的随机字符串。

首先是一段PHP代码

生成个随机字符串,图中是按照重复数量倒序排列,可以看到基本都有重复的。不过也是比较理想的。

由于想提升一下自己的C语言能力,所以用C重新写了一下随机生成字符串。

其中用到了随机数函数srand(),rand();

不过折腾一两个小时,随机数还是有问题。并发访问时时间可能几乎为同时,那么srand给的种子时间可以视为相同的。这样就导致了,产生的随机数也是一样的。从而产生的随机字符串也是一样的。循环输出随机字符串,几乎都是一模一样的。

后来想到了ukey,这个扩展可以实现唯一的ID,那么访问都产生唯一的ID,是不是可以将这个ID作为种子时间。答案是肯定的。

PHP 随机数 C扩展随机数(php生成随机字符串)

上图是产生的随机字符串,可以自定义长度。也同样可以输出只有数字的字符串。相较PHP所产生的随机字符串重复率更低且速度更快。

上图是PHP生成W随机字符串所用的时间

上图是C扩展生成W随机字符串所用的时间

所用的服务器都是1G内存 双核的阿里云服务器。

只要在ukey中加入上如代码就可以生产随机字符串和随机长度数字字符串,PHP唯一ID生成扩展ukey。

php.ini的配置项:

datacenter配置项是一个整数, 用于设置数据中心;worker配置项是一个整数, 用于设置数据中心的机器序号;twepoch配置项是一个位的整数, 用于设置时间戳基数, 此值越大, 生成的ID越小;

安装:

Ukey提供3个有用的函数:

ukey_next_id() -- 用于生成唯一ID ukey_to_timestamp(ID) -- 用于将ID转换成时间戳 ukey_to_machine(ID) -- 用于将ID转换成机器信息

使用实例:

标签: php生成随机字符串

本文链接地址:https://www.jiuchutong.com/biancheng/293693.html 转载请保留说明!

上一篇:微信公众平台DEMO(PHP)(微信公众平台的名词解释)

下一篇:yii2超好用的日期组件和时间组件

  • 个税抵扣申报晚好了需要跟公司申报吗?
  • 合同不明确
  • 个人能否申请延迟退休
  • 报销费用明细和发票
  • 一般纳税人开差额票的税率
  • 企业之间无偿借款
  • 经营公租房的租金收入交房产税
  • 作为展示用的物品
  • 厂部管理人员工资属于什么会计科目
  • 金蝶软件如何设置单价小数点
  • 公司理财收益账务处理
  • 员工报销油费计入个税吗
  • 房产继承税征收标准是多少
  • 关联企业的认定标准司法
  • 金税控系统发票打印设置
  • 企业职工不稳定,还能享受小微企业所得税优惠吗?
  • 卖仪表赚钱吗
  • 资源税进什么科目
  • 支付行业招商方案
  • 幼儿园开发成本
  • 企业残疾人保障金的缴纳标准
  • iphone6s掉水里怎么办
  • 鸿蒙系统公测版和beta版有什么区别
  • 如何修改自己电脑物理地址
  • windows7中
  • php中??
  • 用友结转所得税费用
  • 车辆购置税的计税基础
  • 其他应付款转营业外收入合法吗
  • 研发费用支出税前扣除比例
  • 出口退税的申报期限是多久
  • php有面向对象吗
  • php实现数据库创建题库
  • 工业企业制造费用包括哪些
  • 产权转移数据印花
  • 准予扣除的业务宣传费
  • 长期股权投资哪些用成本法
  • 商业承兑到期后有效期
  • 帝国cms移动端
  • 数据库损坏了怎么修复
  • 辅助生产车间工人工资计入
  • 个人经营所得税率
  • 销项负数会计分录怎么写
  • oracle sql 不等于某个字符
  • 合作社分红计入什么科目
  • 什么叫固定资产
  • 无法收回的款项
  • 如何将港币兑换成人民币
  • 新契税法商业
  • 现金折扣与商业折扣的计算
  • 小规模收到专票可以当普票用吗
  • 商场收租户电费会计分录
  • 工程结算价超过合同价10%
  • 员工提前预支工资合法吗
  • 如何把凭证装订机弄坏
  • 为什么我们需要政府
  • sql server 文件
  • MySql 5.6.35 winx64 安装详细教程
  • wind10手机
  • windows系统钥匙盘制作及启动密码的设置
  • win7 重装系统
  • xp系统怎么打开开机启动项
  • win8操作系统界面
  • 控制面板声音设置
  • windows10周年更新
  • 如何在mac中安装五笔字型输入法
  • 防止linux断电系统崩溃
  • .exe是什么软件
  • perl use vars pragma使用技巧
  • perl处理特殊符号
  • cocos2dx android横屏竖屏设置
  • 枚举的内容怎么输出
  • linux shell脚本命令
  • python sftp put
  • Python实现定时任务
  • jqueryui
  • python基本用法
  • unity iphone
  • 国税总局编制这次怎么调整
  • 重庆职高学校推荐
  • 免责声明:网站部分图片文字素材来源于网络,如有侵权,请及时告知,我们会第一时间删除,谢谢! 邮箱:opceo@qq.com

    鄂ICP备2023003026号

    网站地图: 企业信息 工商信息 财税知识 网络常识 编程技术

    友情链接: 武汉网站建设