php 字符串加密函数(支持中文)示例

内容摘要
这篇文章主要为大家详细介绍了php 字符串加密函数(支持中文)示例,具有一定的参考价值,可以用来参考一下。

对php 字符串加密函数(支持中文)对此感兴趣的朋友,看看idc笔记做的技术
文章正文

这篇文章主要为大家详细介绍了php 字符串加密函数(支持中文)示例,具有一定的参考价值,可以用来参考一下。

对php 字符串加密函数(支持中文)对此感兴趣的朋友,看看idc笔记做的技术笔记!

/**
* php 字符串加密函数(支持中文)
*
* @param 
* @arrange 512-笔记网: www.idcnote.com
**/
function dencrypt($string, $isEncrypt = true, $key = "youdian")
{
if (!isset($string{0}) || !isset($key{0})) {
return false;
}
$dynKey = $isEncrypt ? hash('sha1', microtime(true)) : substr($string, 0, 40);
$fixedKey = hash('sha1', $key);
$dynKeyPart1 = substr($dynKey, 0, 20);
$dynKeyPart2 = substr($dynKey, 20);
$fixedKeyPart1 = substr($fixedKey, 0, 20);
$fixedKeyPart2 = substr($fixedKey, 20);
$key = hash('sha1', $dynKeyPart1 . $fixedKeyPart1 . $dynKeyPart2 . $fixedKeyPart2);
$string = $isEncrypt ? $fixedKeyPart1 . $string . $dynKeyPart2 : (isset($string{339}) ? gzuncompress(base64_decode(substr($string, 40))) : base64_decode(substr($string, 40)));
$n = 0;
$result = '';
$len = strlen($string);
for ($n = 0; $n < $len; $n++) {
$result .= chr(ord($string{$n}) ^ ord($key{$n % 40}));
}
return $isEncrypt ? $dynKey . str_replace('=', '', base64_encode($n > 299 ? gzcompress($result) : $result)) : substr($result, 20, -20);
}
/***   来自php教程(www.idcnote.com)   ***/

注:关于php 字符串加密函数(支持中文)示例的内容就先介绍到这里,更多相关文章的可以留意

代码注释

作者:喵哥笔记

IDC笔记

学的不仅是技术,更是梦想!