首页 > 开发 > PHP > 正文

PHP实现的ID混淆算法类与用法示例

2024-05-04 22:42:32
字体:
来源:转载
供稿:网友

本文实例讲述了PHP实现的ID混淆算法类与用法。分享给大家供大家参考,具体如下:

<?php/** * ID混淆算法 */class IdCrypt{  /**   * 对整数id进行可逆混淆   */  public static function encodeId($id)  {    $sid = ($id & 0xff000000);    $sid += ($id & 0x0000ff00) << 8;    $sid += ($id & 0x00ff0000) >> 8;    $sid += ($id & 0x0000000f) << 4;    $sid += ($id & 0x000000f0) >> 4;    $sid ^= 11184810;    return $sid;  }  /**   * 对通过encodeId混淆的id进行还原   */  public static function decodeId($sid)  {    if (!is_numeric($sid)) {      return false;    }    $sid ^= 11184810;    $id = ($sid & 0xff000000);    $id += ($sid & 0x00ff0000) >> 8;    $id += ($sid & 0x0000ff00) << 8;    $id += ($sid & 0x000000f0) >> 4;    $id += ($sid & 0x0000000f) << 4;    return $id;  }}$idstr = new IdCrypt();echo $encodeid = $idstr->encodeId('12345678');echo "<br/>";echo $decodeid = $idstr->decodeId($encodeid);?>

运行结果:

13309518
12345678

PS:关于加密解密感兴趣的朋友还可以参考本站在线工具:

文字在线加密解密工具(包含AES、DES、RC4等):
http://tools.jb51.net/password/txt_encode

MD5在线加密工具:
http://tools.jb51.net/password/CreateMD5Password

在线散列/哈希算法加密工具:
http://tools.jb51.net/password/hash_encrypt

在线MD5/hash/SHA-1/SHA-2/SHA-256/SHA-512/SHA-3/RIPEMD-160加密工具:
http://tools.jb51.net/password/hash_md5_sha

在线sha1/sha224/sha256/sha384/sha512加密工具:
http://tools.jb51.net/password/sha_encode

更多关于PHP相关内容感兴趣的读者可查看本站专题:《php加密方法总结》、《PHP编码与转码操作技巧汇总》、《PHP数学运算技巧总结》、《PHP数组(Array)操作技巧大全》、《php字符串(string)用法总结》、《PHP数据结构与算法教程》、《php程序设计算法总结》及《php正则表达式用法总结》

希望本文所述对大家PHP程序设计有所帮助。

发表评论 共有条评论
用户名: 密码:
验证码: 匿名发表