加密
function encode($string = 'zhangsan', $skey = 'rg1510d') {
$strArr = str_split(base64_encode($string));
//var_dump($strArr);
$strCount = count($strArr);
// echo $strCount;die;
foreach (str_split($skey) as $key => $value)
{
if($key < $strCount && $strArr[$key])
{
$strArr[$key] .= $value;
}
}
//$key < $strCount && $strArr[$key].=$value;
return str_replace(array('=', '+', '/'), array('O0O0O', 'o000o', 'oo00o'), join('', $strArr));
}
解密
function decode($string = '', $skey = 'rg1510d') {
$strArr = str_split(str_replace(array('O0O0O', 'o000o', 'oo00o'), array('=', '+', '/'), $string), 2);
$strCount = count($strArr);
foreach (str_split($skey) as $key => $value){
if($key<=$strCount && $strArr[$key][1] === $value){
$strArr[$key] = $strArr[$key][0];
}
//$key <= $strCount && isset($strArr[$key]) && $strArr[$key][1] === $value && $strArr[$key] = $strArr[$key][0];
}
return base64_decode(join('', $strArr));
}
$str = '666,999,000,美好一天';
echo "string : " . $str . " <br />";
echo "加密 : " . ($skey = encode($str)) . '<br />';
echo "解密 : " . decode($skey);