Home  >  Article  >  php教程  >  php-简单对称加密算法和字符串与十六进制之间的互转函数,php-十六进制

php-简单对称加密算法和字符串与十六进制之间的互转函数,php-十六进制

WBOY
WBOYOriginal
2016-06-13 09:08:37719browse

php-简单对称加密算法和字符串与十六进制之间的互转函数,php-十六进制

/**
* 简单对称加密算法之加密
* @param String $string 需要加密的字串
* @param String $skey 加密EKY
* @return String
*/
function encode($string = '', $skey = 'textphp') {
  $skey = str_split(base64_encode($skey));
  $strArr = str_split(base64_encode($string));
  $strCount = count($strArr);
  foreach ($skey as $key => $value) {
    $key   }
  return str_replace('=', 'O0O0O', join('', $strArr));
}

/**
* 简单对称加密算法之解密
* @param String $string 需要解密的字串
* @param String $skey 解密KEY
* @return String
*/
function decode($string = '', $skey = 'textphp') {
  $skey = str_split(base64_encode($skey));
  $strArr = str_split(str_replace('O0O0O', '=', $string), 2);
  $strCount = count($strArr);
  foreach ($skey as $key => $value) {
    $key   }
  return base64_decode(join('', $strArr));
}

//字符串转换成16进制
function str2hex($str, $encoded = 'GBK') {
  $hex = '';
  if ($encoded == 'GBK') {
    $str = mb_convert_encoding($str, 'GBK', 'UTF-8');
  }
  for ($i = 0, $length = mb_strlen($str); $i     $hex .= dechex(ord($str{$i}));
  }
  return $hex;
}

//16进制转换成字符串
function hex2str($hex, $encoded = 'GBK') {
  $str = '';
  $arr = str_split($hex, 2);
  foreach ($arr as $bit) {
    $str .= chr(hexdec($bit));
  }
  if ($encoded == 'GBK') {
    $str = mb_convert_encoding($str, 'UTF-8', 'GBK');
  }
  return $str;
}

Statement:
The content of this article is voluntarily contributed by netizens, and the copyright belongs to the original author. This site does not assume corresponding legal responsibility. If you find any content suspected of plagiarism or infringement, please contact admin@php.cn