zoukankan      html  css  js  c++  java
  • 随机用户id号,随机密码用户名

    类似新浪微博的用户Id怎么生成呢?

    特点:10位随机数,而且是以1开头的

    好处:不容易猜出有多少用户

    方法一:

    目的是生成唯一id。可以用uniqid。uniqid获取一个字符串,循环这个字符串,把每个字符串都用ord……

    规则自己定,最容易想到的是自增键,其它的比如你要想然这个ID有点意义的话,可以是申请ID的地域ID+当然时间戳+什么什么的,只要不重复不就行了

    PHP生成唯一ID的三种方法
    1、md5(time() . mt_rand(1,1000000));   这种方法有一定的概率会出现重复 
    2、php内置函数uniqid()
      uniqid() 函数基于以微秒计的当前时间,生成一个唯一的 ID.   w3school参考手册有一句话:"由于基于系统时间,通过该函数生成的 ID 不是最佳的。如需生成绝对唯一的 ID,请使用 md5() 函数"。 
    下面方法返回结果类似:5DDB650F-4389-F4A9-A100-501EF1348872
    com_create_guid()是php自带的生成唯一id方法,php5之后貌似已经没有了。 
     
    3、官方uniqid()参考手册有用户提供的方法,结果类似:
    {E2DFFFB3-571E-6CFC-4B5C-9FEDAAF2EFD7}.
     
    1 2 3 4 5 6 7 8 9 10 11 12 13 14 15
    function uuid() {
    if (function_exists ( 'com_create_guid' )) { return com_create_guid (); } else {
    mt_srand ( ( double ) microtime () * 10000 ); //optional for php 4.2.0 and up.随便数播种, 4.2.0以后不需要了。
    $charid = strtoupper ( md5 ( uniqid ( rand (), true ) ) ); //根据当前时间(微秒计)生成唯一id. $hyphen = chr ( 45 ); // "-" $uuid = '' . //chr(123)// "{"
    substr ( $charid, 0, 8 ) . $hyphen . substr ( $charid, 8, 4 ) . $hyphen . substr ( $charid, 12, 4 ) .  $hyphen . substr ( $charid, 16, 4 ) . $hyphen . substr ( $charid, 20, 12 ); //.chr(125);// "}" return $uuid; } } 
    1 2 3 4 5 6 7
    public function create_guid($namespace = '') {  static $guid = ''; $uid = uniqid("", true); $data = $namespace;
    $data .= $_SERVER['REQUEST_TIME']; $data .= $_SERVER['HTTP_USER_AGENT']; $data .= $_SERVER['LOCAL_ADDR'];


    历史老照片不能说的秘密慈禧军阀明末清初文革晚清




  • 相关阅读:
    2021NUAA暑假集训 Day3 题解
    2021NUAA暑假集训 Day2 题解
    2021NUAA暑期模拟赛部分题解
    CodeForces 1038D Slime
    UVA 11149 Power of Matrix
    UVA 10655 Contemplation! Algebra
    UVA 10689 Yet another Number Sequence
    HDU 4549 M斐波那契数列
    HDU 4990 Reading comprehension
    CodeForces 450B Jzzhu and Sequences
  • 原文地址:https://www.cnblogs.com/Alight/p/3516731.html
Copyright © 2011-2022 走看看