1. 论坛系统升级为Xenforo,欢迎大家测试!
    Dismiss Notice

生成任意长度的随机数

Discussion in '后端开发' started by 小叶, Nov 24, 2005.

  1. 小叶

    小叶 New Member

    Joined:
    Sep 4, 2005
    Messages:
    17,941
    Likes Received:
    33
    PHP:
    Function Createpass(LengthNum)
            
    Dim Ran,i
    '默认15位
            if Not IsNumeric(LengthNum) then LengthNum=15
            Createpass=""
            For i=1 To LengthNum
                Randomize
                Ran = CInt(Rnd * 2)
                Randomize
                If Ran = 0 Then
                    Ran = CInt(Rnd * 25) + 97
                    Createpass =Createpass& UCase(Chr(Ran))
                ElseIf Ran = 1 Then
                    Ran = CInt(Rnd * 9)
                    Createpass = Createpass & Ran
                ElseIf Ran = 2 Then
                    Ran = CInt(Rnd * 25) + 97
                    Createpass =Createpass& Chr(Ran)
                End If
            Next
        End Function

    '
    调用....
        
    Dim nums
        nums
    =Createpass(15)
        
    response.write nums
     
  2. wm_chief

    wm_chief New Member

    Joined:
    Sep 5, 2005
    Messages:
    17,890
    Likes Received:
    46
    不错。
     
  3. 小叶

    小叶 New Member

    Joined:
    Sep 4, 2005
    Messages:
    17,941
    Likes Received:
    33
    3M152T6gfa3D4h8
    2L15FrQeey2B3f7
    t85b621664s5v6H
     
  4. 老林

    老林 New Member

    Joined:
    Sep 6, 2005
    Messages:
    10,580
    Likes Received:
    36
    我来补充一个:

    MyRandc(n) 生成随机字符,n为字符的个数

    如:
    response.write MyRandn(10)
    输出10个随机字符


    function MyRandc(n) '生成随机字符,n为字符的个数
    dim thechr
    thechr = ""
    for i=1 to n
    dim zNum,zNum2
    Randomize
    zNum = cint(25*Rnd)
    zNum2 = cint(10*Rnd)
    if zNum2 mod 2 = 0 then
    zNum = zNum + 97
    else
    zNum = zNum + 65
    end if
    thechr = thechr & chr(zNum)
    next
    MyRandc = thechr
    end function
     
  5. 小叶

    小叶 New Member

    Joined:
    Sep 4, 2005
    Messages:
    17,941
    Likes Received:
    33
    啊哦..好像差不多..嘎嘎.
     
  6. 老林

    老林 New Member

    Joined:
    Sep 6, 2005
    Messages:
    10,580
    Likes Received:
    36
    再来一个:

    生成n到x之间的随机数.

    GetRnd(n,x)

    function GetRnd(min,max)
    Randomize
    GetRnd = Int((max - min + 1) * Rnd + min)
    end function
     
  7. 小叶

    小叶 New Member

    Joined:
    Sep 4, 2005
    Messages:
    17,941
    Likes Received:
    33
    这个就嘎嘎..免了
     
  8. Tameway

    Tameway New Member

    Joined:
    Sep 6, 2005
    Messages:
    1,286
    Likes Received:
    8
    顶一个,随机字符串在加密、验证等方面应用广泛,感谢分享