php生成订单号-当天从1开始自增
/**
* 生成订单号
* -当天从1开始自增
* -订单号模样:20190604000001
* @param Client $redis
* @param $key
* @param $back:序号回退,如果订单创建失败,事务回滚可用
* @return string
*/
public static function createOrderSn($key, $back=0)
{
$sn = Redis::get($key);//laravel redis读取,替换一下
$snDate = substr($sn,0,8);
$snNo = intval(substr($sn,8));
$curDate = date('Ymd');
if($back==1){//序号回退
if($curDate==$snDate){
$snNo = ($snNo>1) ? ($snNo-1) : 1;
$sn = $curDate.sprintf("%06d",$snNo);
}
}else{//序号增加
if(empty($sn)){
$sn = $curDate.'000001';
}else{
$snNo = ($curDate==$snDate) ? ($snNo+1) : 1;
$sn = $curDate.sprintf("%06d",$snNo);
}
}
Redis::set($key,$sn);//laravel redis写入,替换一下
return $sn;
}
自己封装的,有不对请指示。
php生成订单号-当天从1开始自增的更多相关文章
- PHP生成订单号(产品号+年的后2位+月+日+订单号)
require '../common.inc.php'; /* * 产品号+年的后2位+月+日+订单数 * @param [Int] $prodcutId 产品号 * @param [Int] $tr ...
- Oracle 函数 “自动生成订单号”
create or replace function get_request_code return varchar2 AS --函数的作用:自动生成订单号 v_mca_no mcode_apply_ ...
- php 生成订单号
最近在练手一个订单提交的小项目,需要用到生成订单号,网上找了下,觉得这个最好. function build_order_no(){ return date('Ymd').substr(implode ...
- php 生成订单号201807205598981
php版 /** * 生成唯一订单号 */ public function build_order_no() { $no = date('Ymd').substr(implode(NULL, arra ...
- RNGCryptoServiceProvider 生成订单号
先生成1~1000的随机数 class Program { // Create a new instance of the RNGCryptoServiceProvider. private stat ...
- 用存储过程生成订单号ID
DECLARE @sonumber BIGINTSELECT @sonumber=CONVERT(BIGINT, @serverId + Substring(CONVERT(VARCHAR(4), D ...
- json字符串转为php数组,使用随机字符串生成订单号(学生笔记)
//提交订单 function add_order(){ session_start(); // var_dump($_SESSION); // die(); // session_destroy() ...
- 13.如何生成订单号,用uuid
String orderNum = UUID.randomUUID().toString().replaceAll("-", "");
- 前台js根据当前时间生成订单号
*********前台显示框**************** <input type="text" id="WIDout_trade_no" name=& ...
随机推荐
- java抛出异常后,后续代码是否可继续执行
参考:https://www.cnblogs.com/wangyingli/p/5912269.html 仅此可正常执行异常后内容 try{ throw new Exception("参数越 ...
- 洛谷P3778 [APIO2017]商旅——01分数规划
题目:https://www.luogu.org/problemnew/show/P3778 转化有点技巧: 其实直接关注比率的上下两项,也就是盈利和时间: 通过暴枚和 floyd 可以处理出两两点间 ...
- HDU 2914 Triangle (Fibnacci 数)
题意:给你一个长度为 n 的木棒,求至少拿掉几根使得剩余的木棒构成不了三角形. 析:为了保证不形成三角形,所以保证两边之和等于最大边是最优,这不就是Fibnacci 数么,由于 n 很小,if-els ...
- 洛谷P4344 [SHOI2015]脑洞治疗仪(珂朵莉树)
传送门 看到区间推倒……推平就想到珂朵莉树 挖脑洞直接assign,填坑先数一遍再assign再暴力填,数数的话暴力数 //minamoto #include<iostream> #inc ...
- [App Store Connect帮助]八、维护您的 App(6)使某个先前版本不可下载
如果您 App 的某个先前版本出现了法律或可用性问题,您可以避免该版本可供顾客下载. 如果该版本状态为“可供销售”且存在法律或可用性问题,您必须提交一个 App 更新,并在提交新版本时指明先前版本中存 ...
- Rabbitmq笔记二
消息何去何从 mandatory 和 immediate 是 channel . basicPublish 方法中的两个参数,它们都有 当消息传递过程中不可达目的地时将消息返回给生产者的功能. 当 m ...
- AutoCAD2012启动错误 1308 源文件未找到
启动AutoCAD2012时,弹出错误1308,如图所示: 是何原因? 对CAD的运行有何影响?
- 使用方向变换(directional transform)图像分块压缩感知
论文的思路是先介绍分块压缩感知BCS,然后介绍使用投影和硬阈值方法的迭代投影方法PL,接着将PL与维纳滤波器结合形成SPL(平滑PL),并且介绍了稀疏表示的几种基,提出了两种效果较好的稀疏基:CT与D ...
- _bzoj1010 [HNOI2008]玩具装箱toy【斜率优化dp】
传送门:http://www.lydsy.com/JudgeOnline/problem.php?id=1010 裸的斜率优化,第一次写队首维护的时候犯了个智障错误,队首维护就是维护队首,我怎么会那队 ...
- Java中的流(5)大数据流的分段读取
来自文件 或 网络的InputStream数据量可能很大,如果用流的大小申请byte[],可能内存不足报错. 解决方案:分段读取 InputStream的方法int available()返回本次可读 ...