美文网首页
生成数字字母验证码

生成数字字母验证码

作者: forever_youyou | 来源:发表于2018-03-29 10:37 被阅读0次
    /**
     * @param string $str 生成验证码的字符
     * @param int $len
     * @param string $format
     * @param string $salt
     * @return bool|string
     */
    function genCode($str, $len = 4, $format = 'NUMBER', $salt = '')
    {
        $salt = $salt ? $salt : 'secret string';
        if (!$str) {
            return false;
        }
        $_str = $str . $salt;
        $_str = trim(base64_encode(md5($_str)), '=');
        switch ($format) {
            case 'ALL':
                $chars = preg_replace('/0|o|O/', '', $_str);
                break;
            case 'CHAR':
                $chars = preg_replace('/\d|o|O/', '', $_str);
                break;
            case 'NUMBER':
            default:
                $chars = base_convert($_str, 36, 10);
                $chars = str_replace('0', '', $chars);
                break;
        }
        return substr($chars, 0, $len);
    }
    

    相关文章

      网友评论

          本文标题:生成数字字母验证码

          本文链接:https://www.haomeiwen.com/subject/gbfmcftx.html