>  기사  >  php教程  >  PHP生成随机数,字符串

PHP生成随机数,字符串

WBOY
WBOY원래의
2016-06-13 10:50:11953검색

function rand_string($len = 6, $type = '', $addChars = '') { 
    $str = ''; 
    switch ($type) { 
        case 0 : 
            $chars = 'ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz' . $addChars; 
            break; 
        case 1 : 
            $chars = str_repeat ( '0123456789', 3 ); 
            break; 
        case 2 : 
            $chars = 'ABCDEFGHIJKLMNOPQRSTUVWXYZ' . $addChars; 
            break; 
        case 3 : 
            $chars = 'abcdefghijklmnopqrstuvwxyz' . $addChars; 
            break; 
        default : 
            // 默认去掉了容易混淆的字符oOLl和数字01,要添加请使用addChars参数 
            $chars = 'ABCDEFGHIJKMNPQRSTUVWXYZabcdefghijkmnpqrstuvwxyz23456789' . $addChars; 
            break; 
    } 
    if ($len > 10) { //位数过长重复字符串一定次数 
        $chars = $type == 1 ? str_repeat ( $chars, $len ) : str_repeat ( $chars, 5 ); 
    } 
    if ($type != 4) { 
        $chars = str_shuffle ( $chars ); 
        $str = substr ( $chars, 0, $len ); 
    } else { 
        // 中文随机字 
        for($i = 0; $i             $str .= msubstr ( $chars, floor ( mt_rand ( 0, mb_strlen ( $chars, 'utf-8' ) - 1 ) ), 1 ); 
        } 
    } 
    return $str; 

 

 

摘自 lpdx111的专栏

성명:
본 글의 내용은 네티즌들의 자발적인 기여로 작성되었으며, 저작권은 원저작자에게 있습니다. 본 사이트는 이에 상응하는 법적 책임을 지지 않습니다. 표절이나 침해가 의심되는 콘텐츠를 발견한 경우 admin@php.cn으로 문의하세요.