PHP简单对称ID加密、解密算法,有时候需要对数据进行简单的混淆,不让别人轻易破解,所以就需要对数据进行一定的加密解密来保证数据的安全性,这里提供简单的方法,供大家参考。使用方法
PHP简单对称ID加密、解密算法,有时候需要对数据进行简单的混淆,不让别人轻易破解,所以就需要对数据进行一定的加密解密来保证数据的安全性,这里提供简单的方法,供大家参考。
<?php
/**
* [encodeId ID加密]
* @param int $id ID
* @param int $time 时间戳
*/
function encodeId($id = 0, $time = '') {
//时间戳
if(empty($time)){
$time = time();
} else {
$time = !empty(strtotime($time)) ? strtotime($time) : time();
}
//加密
return base64_encode($time . $id);
}
/**
* [decodeId ID解密]
*/
function decodeId($id = "") {
//解密
$id = str_replace("%3D", '=', $id);
//转码
$id = ConvertToUTF8(base64_decode($id));
//截取
$id = substr($id, 10);
//返回
return is_numeric($id) ? $id : 0;
}
/**
* [ConvertToUTF8 转换为utf-8]
*/
function ConvertToUTF8($text){
//检测
$encoding = mb_detect_encoding($text, mb_detect_order(), false);
//判断
if($encoding == "UTF-8"){
$text = mb_convert_encoding($text, 'UTF-8', 'UTF-8');
}
//转换
$out = iconv(mb_detect_encoding($text, mb_detect_order(), false), "UTF-8//IGNORE", $text);
//返回
return $out;
}
?>
使用方法
<?php
encodeId('1'); //加密
decodeId('MTY2MzgzMTQ5NzE=') //解密
?>
沃梦达教程
本文标题为:PHP简单对称ID加密与解密方法
基础教程推荐
猜你喜欢
- PHP实现Redis单据锁以及防止并发重复写入 2022-10-12
- php array分组,PHP中array数组的分组排序 2022-08-01
- PHP命名空间简单用法示例 2022-12-01
- PHP中的错误及其处理机制 2023-06-04
- thinkphp3.2.3框架动态切换多数据库的方法分析 2023-03-19
- laravel 解决多库下的DB::transaction()事务失效问题 2023-03-08
- 在Laravel中实现使用AJAX动态刷新部分页面 2023-03-02
- laravel ORM关联关系中的 with和whereHas用法 2023-03-02
- PHP获取MySQL执行sql语句的查询时间方法 2022-11-09
- 使用PHP开发留言板功能 2023-03-13