1. 程式人生 > >php生成隨機字串函式

php生成隨機字串函式

  /**
    * 生成隨機串
    *
    * @param   int     $len    
    * @param   int     $code_type 1全部 2 英文字母 3數字
    * @return  string    
    */
    function generate_code($len = 4, $code_type = 1)
    {
        $chars_array = array(
                '1' => '1234567890abcdefghijklmnopqrstuvwxyzABCDEFGHIJKLOMNOPQRSTUVWXYZ', 

                '2' => 'abcdefghijklmnopqrstuvwxyzABCDEFGHIJKLOMNOPQRSTUVWXYZ', 
                '3' => '1234567890'
                );
        $chars = $chars_array[$code_type];
        for ($i = 0, $count = strlen($chars); $i < $count; $i++)
        {
            $arr[$i] = $chars[$i];
        }
        mt_srand((double) microtime() * 1000000);

        shuffle($arr);
        $code = substr(implode('', $arr), 5, $len);
        return $code;
    }