PHP 5는 방법으로 고유 주문 번호를 생성

첫 번째

전용  기능 doCreateOrderNumber ( $ 시간 ) { 

          $ I = 1 ; 

          $ DD = 날짜 ( 'Ymd 일수', $ 시간 ); 

          $ AA = 'OH'. $는 DD 형식 ; 

          $ 고해상도 = $이 -> orderModel-> 쿼리 ( "sr_order_list에서 SN '와 같은 선택 SN AA $ ID 제한 1로 순서 %를'" ); 

          만약 (! 는 isset ( $ 입술 [0] 'SN' ])) { 

                $ I = 1 ; 

          } 다른 { 

                $ i가 = (int)를 SUBSTR ( $ 입술 [0] 'SN', 9,10) + 1; 

          } 

          동안 ( 사실 ) { 

                $ NSN = 'OH'. DD $ . 난을 $ ; 

                $ 존재 = $이 -> orderModel-> 쿼리 ( "sr_order_list에서 선택 ID 곳 SN = ' $ NSN '" ); 

                경우 ( $의 존재 ) { 

                      $ 내가 ++ ; 

                } 다른 { 

                      반환  $ NSN을 ; 

                } 

          } 

    }

두 번째

$ OSN = 날짜 ( 'Ymd 일수'). str_pad ( 에는, mt_rand (1, 99999), 5, 0, STR_PAD_LEFT); 

에코  $ OSN ; // 2018070462577

세 번째

$ OSN = 날짜 ( 'Ymd 일수'). SUBSTR ( 내파 ( NULL , array_map ( 'ORD'를 str_split ( SUBSTR ( uniqid (), 7, 13), 1))), 0, 8 ); 

에코  $ OSN ; // 2018070499495653

네번째

$ order_id_main = 날짜 ( 'YmdHis'). 랜드 (10000000,99999999 ); 

  $ order_id_len = 나 strlen ( $의 order_id_main ); 

  $ order_id_sum = 0 ; 

   ( $ I = 0; $ I < $ order_id_len ; $ I ++ ) { 

  $ order_id_sum + = (INT) ( SUBSTR ( $ order_id_main , $ I , 1 )); 

  } 

  $ OSN = $ order_id_main . str_pad ((100 - $의 order_id_sum100 %) 100,2 %, '0', STR_PAD_LEFT); 

에코  $ OSN ; // 201,807,041,332,258,742,313,727

다섯 번째

$ 코드 = 배열 ( 'A', 'B', 'C', 'D', 'E', 'F', 'G', 'H', 'I', 'J' ); 

$ OSN = $ 코드 [ INTVAL ( 날짜 ( 'Y')) - 2011]. strtoupper ( dechex (  ( 'm'))). 날짜 ( 'D'). SUBSTR ( 시간 () -5). SUBSTR ( microtime (), 2, 5). sprintf를 ( '% 02D', 랜드 (0, 99 )); 

에코  $ OSN ; // H704764673624352

 

추천

출처www.cnblogs.com/houss/p/12001282.html