一个完整的加解密函数

define('AUTH_KEY','this is');

function encrypt($str, $key = AUTH_KEY)
{
    $coded = '';
    $keylength = strlen($key); //7
    //$count //11
    for ($i = 0, $count = strlen($str); $i < $count; $i = $i+$keylength)
    {
        $coded .= substr($str, $i, $keylength) ^ $key;
    }
//    return base64_encode($coded);
    return str_replace('=', '', base64_encode($coded));
}

/**
 * 解密函数
 * @param   string  $str    加密后的字符串
 * @param   string  $key    密钥
 * @return  string  加密前的字符串
 */
function decrypt($str, $key = AUTH_KEY)
{
    $coded = '';
    $keylength = strlen($key);
    $str = base64_decode($str);

    for ($i = 0, $count = strlen($str); $i < $count; $i += $keylength)
    {
        $coded .= substr($str, $i, $keylength) ^ $key;
    }

    return $coded;
}

猜你喜欢

转载自blog.csdn.net/youcijibi/article/details/80599924