php 生成唯一订单

举报
lxw1844912514 发表于 2022/03/26 23:57:04 2022/03/26
【摘要】 //生成唯一订单 function build_order_no(){ return date('ymd').substr(implode(NULL, array_map('ord', str_split(substr(uniqid(), 7, 13), 1))), 0, 8); } //获取唯一序列号pu...

  
  1. //生成唯一订单
  2. function build_order_no(){
  3. return date('ymd').substr(implode(NULL, array_map('ord', str_split(substr(uniqid(), 7, 13), 1))), 0, 8);
  4. }

  
  1. //获取唯一序列号
  2. public static function generateNum() {
  3. //strtoupper转换成全大写的
  4. $charid = strtoupper(md5(uniqid(mt_rand(), true)));
  5. $uuid = substr($charid, 0, 8).substr($charid, 8, 4).substr($charid,12, 4).substr($charid,16, 4).substr($charid,20,12);
  6. return $uuid;
  7. }
  8. --------------------------------------------
  9. <?php
  10. $units = array();
  11. for($i=0;$i<1000000;$i++){
  12. $units[] = md5(uniqid(md5(microtime(true)),true));
  13. }
  14. $values = array_count_values($units);
  15. $duplicates = [];
  16. foreach($values as $k=>$v){
  17. if($v>1){
  18. $duplicates[$k]=$v;
  19. }
  20. }
  21. //这种方法生成的唯一标识中没有重复。
  22. echo '<pre>';
  23. print_r($duplicates);
  24. echo '</pre>';
  25. ?>

 

文章来源: blog.csdn.net,作者:lxw1844912514,版权归原作者所有,如需转载,请联系作者。

原文链接:blog.csdn.net/lxw1844912514/article/details/112780630

【版权声明】本文为华为云社区用户转载文章,如果您发现本社区中有涉嫌抄袭的内容,欢迎发送邮件进行举报,并提供相关证据,一经查实,本社区将立刻删除涉嫌侵权内容,举报邮箱: cloudbbs@huaweicloud.com
  • 点赞
  • 收藏
  • 关注作者

评论(0

0/1000
抱歉,系统识别当前为高风险访问,暂不支持该操作

全部回复

上滑加载中

设置昵称

在此一键设置昵称,即可参与社区互动!

*长度不超过10个汉字或20个英文字符,设置后3个月内不可修改。

*长度不超过10个汉字或20个英文字符,设置后3个月内不可修改。