1. 论坛系统升级为Xenforo,欢迎大家测试!
    排除公告

生成任意长度的随机数

本帖由 小叶2005-11-24 发布。版面名称:后端开发

  1. 小叶

    小叶 New Member

    注册:
    2005-09-04
    帖子:
    17,941
    赞:
    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

    注册:
    2005-09-05
    帖子:
    17,890
    赞:
    46
    不错。
     
  3. 小叶

    小叶 New Member

    注册:
    2005-09-04
    帖子:
    17,941
    赞:
    33
    3M152T6gfa3D4h8
    2L15FrQeey2B3f7
    t85b621664s5v6H
     
  4. 老林

    老林 New Member

    注册:
    2005-09-06
    帖子:
    10,580
    赞:
    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

    注册:
    2005-09-04
    帖子:
    17,941
    赞:
    33
    啊哦..好像差不多..嘎嘎.
     
  6. 老林

    老林 New Member

    注册:
    2005-09-06
    帖子:
    10,580
    赞:
    36
    再来一个:

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

    GetRnd(n,x)

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

    小叶 New Member

    注册:
    2005-09-04
    帖子:
    17,941
    赞:
    33
    这个就嘎嘎..免了
     
  8. Tameway

    Tameway New Member

    注册:
    2005-09-06
    帖子:
    1,286
    赞:
    8
    顶一个,随机字符串在加密、验证等方面应用广泛,感谢分享