1씩 증가하는 번호를 1~4만큼 랜덤하게 증가하게 만드려면 어떻게 해야하나요??

매출이 오르면 내리는 수수료! 지금 수수료센터에서 전자결제(PG)수수료 비교견적 신청해 보세요!
1씩 증가하는 번호를 1~4만큼 랜덤하게 증가하게 만드려면 어떻게 해야하나요??

QA

1씩 증가하는 번호를 1~4만큼 랜덤하게 증가하게 만드려면 어떻게 해야하나요??

본문


    $date = date("ymd", time());    // 2002년 3월 7일 일경우 020307 
    $sql = " select max(od_id) as max_od_id from $g4[yc4_order_table] where SUBSTRING(od_id, 1, 6) = '$date' "; 
    $row = sql_fetch($sql); 
    $od_id = $row[max_od_id]; 
    if ($od_id == 0) 
    { 
        //$od_id = 1; 
        // 시작하는 포인트를 145에서 999 사이에서 임의로 선택 
        $od_id = rand( '145', '999'); 
    } 
    else 
    { 
        $od_id = (int)substr($od_id, -4); 
        $od_id++; 
    } 
    $od_id = $date . substr("0000" . $od_id, -4);
 

 

 

해당코드에서 $od_id++ 이부분을 바꾸고싶어요

기본적인 c언어만 할줄알아서

이부분이 1씩 더해진다는 의미인건 알겠습니다

 

그런데 이부분을 1~4중 랜덤한 숫자만큼 더해서 증가시키고 싶은데 어떻게 해야할까요??

 

001-002-003 이런식이 아니라

001-003-004-008 이런식으로 증가하게 만들고싶어요!

 

그리고 ($od_id, -4); 

이부분에서 -4는 무슨 기능인가요??

이 질문에 댓글 쓰기 :

답변 1

랜덤은

mt_rand(1, 4); // 3

https://www.php.net/manual/en/function.mt-rand.php

 

랜덤으로 만든 숫자를 세자리 수로 바꿔서 string 캐스팅 해야겠군요

sprintf('%03d', mt_rand(1, 4)); // 003

https://www.php.net/manual/en/function.sprintf

 

$a = '001-002-003';

$b = '008';

$c = $a.'-'.$b; // 문자열 더하기 001-002-003-008

https://www.php.net/manual/en/language.operators.string.php

 

 

substr 은 substring 으로 문자열의 부분을 자르는 함수인데 

마이너스면 뒤에서 부터 셉니다 

https://www.php.net/manual/en/function.substr.php

 

답변을 작성하시기 전에 로그인 해주세요.
전체 0
QA 내용 검색
  • 개별 목록 구성 제목 답변작성자조회작성일
  • 질문이 없습니다.

회원로그인

(주)에스아이알소프트 / 대표:홍석명 / (06211) 서울특별시 강남구 역삼동 707-34 한신인터밸리24 서관 1404호 / E-Mail: admin@sir.kr
사업자등록번호: 217-81-36347 / 통신판매업신고번호:2014-서울강남-02098호 / 개인정보보호책임자:김민섭(minsup@sir.kr)
© SIRSOFT