PHP生成唯一订单号_php技巧

在网上找了一番,发现这位同学的想法挺不错的,redtamo,具体的请稳步过去看看,我作简要概述,该方法用上了英文字母、年月日、Unix 时间戳和微秒数、随机数,重复的可能性大大降低,还是很不错的。使用字母很有代表性,一个字母对应一个年份,总共16位,不多也不少.

1.

复制代码 代码如下:

<?php
     $yCode = array('A', 'B', 'C', 'D', 'E', 'F', 'G', 'H', 'I', 'J');
     $orderSn = $yCode[intval(date('Y')) - 2011] . strtoupper(dechex(date('m'))) . date('d') . substr(time(), -5) . substr(microtime()] 2, 5) . sprintf('%02d', rand(0, 99));
?>

生成效果:

A422694333616096

2.

复制代码 代码如下:

<?php
    function build_order_no(){
        return date('Ymd').substr(implode(NULL, array_map('ord', str_split(substr(uniqid(), 7, 13), 1))), 0, 8);
    }
    echo build_order_no();
?>

输出结果:

2014062356100485
2014062349535399

以上所述就是本文的全部内容了,希望大家能够喜欢。

以上是小编为您精心准备的的内容,在的博客、问答、公众号、人物、课程等栏目也有的相关内容,欢迎继续使用右上角搜索按钮进行搜索php 生成唯一订单号、php生成唯一的订单号、java生成订单号唯一性、生成唯一订单号、java生成唯一订单号,以便于您获取更多的相关知识。

时间: 2024-09-08 15:10:15

PHP生成唯一订单号_php技巧的相关文章

PHP实现生成唯一会员卡号_php技巧

在不查询数据库的情况下,每个会员登录进来会生成一个数字字母组合不重复的会员卡号. 效果图如下: 当我们要将一个庞大的数据进行编号时,而编号有位数限制,比如5位的车牌号.10位的某证件号码.订单流水号.短网址等等,我们可以使用36进制计算出符合位数的不重复的编号.                                                                                 查看演示 下载源码 我们将0-Z(0123456789ABCDEFGHIJK

PHP生成唯一订单号的方法汇总_php实例

第一种 复制代码 代码如下: return date('Ymd') . str_pad(mt_rand(1, 99999), 5, '0', STR_PAD_LEFT); 第二种 复制代码 代码如下: return date('Ymd').substr(implode(NULL, array_map('ord', str_split(substr(uniqid(), 7, 13), 1))), 0, 8); 第三种 //生成24位唯一订单号码,格式:YYYY-MMDD-HHII-SS-NNNN,

PHP生成唯一订单号的6种方法

做商城类项目经常需要生成唯一订单号,下面来个汇总! 方法一: return date('Ymd') . str_pad(mt_rand(1, 99999), 5, '0', STR_PAD_LEFT); 方法二: 正在使用... /**  *  * uniqid - 官方是这样说的:  * Gets a prefixed unique identifier based on the current time in microseconds.  */ function build_order_no

PHP生成唯一订单号的方法汇总

 第一种    代码如下: return date('Ymd') . str_pad(mt_rand(1, 99999), 5, '0', STR_PAD_LEFT);   第二种   代码如下: return date('Ymd').substr(implode(NULL, array_map('ord', str_split(substr(uniqid(), 7, 13), 1))), 0, 8);   第三种 1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 1

支付宝唯一订单号如何生成

问题描述 支付宝唯一订单号如何生成? 解决方案 生成规则及方式太多了... 要保证唯一也很轻松吧?uuid就能保证唯一了吧. 如果不放心 在toString + 系统毫秒. 如果在不放心的话可以采用RSA或其它方式继续加密...

如何定义唯一订单号,解决用户重复交费问题?

问题描述 开发网上商城,用户购物时,可能登录在不同的两个pc上,产生一个相同订单号,交费成功,但记录的是两笔交易. 解决方案 解决方案二:引用楼主zhaijianguo8848的回复: 开发网上商城,用户购物时,可能登录在不同的两个pc上,产生一个相同订单号,交费成功,但记录的是两笔交易. 不明白这句话的意思.是说要达到这种效果,还是不要这种效果?不过产生唯一订单号,可以在订单号后面加时间戳,订单号+System.currentTimeMillis()解决方案三:取得訂單號與交費的時候,數據庫設

php简单生成随机数的方法_php技巧

本文实例讲述了php简单生成随机数的方法.分享给大家供大家参考.具体如下: <?php /** *生成随机数,可用户验证码 *@param */ function randStr($m = 5) { $new_str = ''; $str = 'ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwsyz0123456789'; $max=strlen($str)-1; for ($i = 1; $i <= $m; ++$i) { $new_str

php生成短域名函数_php技巧

php生成短域名函数 public function createRandCode($string) { $code = ''; $hex_code = '1qaz2wsx3edc4rfv5t-gb6yhn7ujm8ik9ol0p_'; $now = microtime(true) * 10000; $strlen = strlen($hex_code); $hash_code = hash('sha256', $string); // 这里会为编码定义一个随机的长度,长度取决于step $st

php根据一个给定范围和步进生成数组的方法_php技巧

这里给定开始和结束值,再给定一个步进值,就可以生成一个等差数组. function array_range($from, $to, $step=1){ $array = array(); for ($x=$from; $x <= $to; $x += $step){ $array[] = $x; } return $array; } print_r(array_range(0, 20, 5)); /* returns: Array ( [0] => 0 [1] => 5 [2] =>