- <?php
- /* ----------------------------------------------------------------------------
- * Script Name: encrypt.php
- * Creation Date: 2008-4-7 10:36
- * Last Modified: 2008-4-12 16:00
- * Author: meyu
- * Copyright (c) 2007
- * Purpose: 数字字符串简易加解密
- * ----------------------------------------------------------------------------*/
- class Encryption {
- /**
- * 最终的密文代码,可设为任意不重复的10位英文字符a-zA-Z
- */
- private $replacement = 'urskydMeIV';
- /**
- * 增加的密文第一位,可设为1位除0以外的整数,即 1-9
- */
- private $prefix = "8";
- /**
- * 公钥,长度小于8位的正整数
- */
- private $match = "111111";
- /**
- * 转换后对照数组
- */
- private $replaceenc;
- private $replacedec;
- function __construct() {
- for($i =0; $i < 10; $i++) {
- $this->replaceenc['/'.$i.'/'] = $this->replacement{$i};
- $this->replacedec['/'.$this->replacement{$i}.'/'] = $i;
- }
- }
- public function encrypt($str) {
- return preg_replace(
- array_keys($this->replaceenc),
- $this->replaceenc,
- $this->mynotin(preg_replace("/(.)(.)/", "${2}${1}", $str))
- );
- }
- public function decrypt($str) {
- return preg_replace("/(.)(.)/", "${2}${1}",
- $this->mynotout(preg_replace(array_keys($this->replacedec),$this->replacedec,$str))
- );
- }
- private function mynotin($str) {
- $str_out = "";
- $i = 0;
- while(isset($str{7*$i})) {
- $str_out .= (($this->prefix.substr($str, $i*7, 7))+0)^$this->match;
- $i++;
- }
- return $str_out;
- }
- private function mynotout($str) {
- $str_out = "";
- $i = 0;
- while(isset($str{8*$i})) {
- $str_out .= substr((substr($str, $i*8, 8)+0)^$this->match, 1);
- $i++;
- }
- return $str_out;
- }
- }
- ?>
php5数字型字符串加解密代码
2019-10-29 15:30php教程网 PHP教程
php5数字型字符串加解密代码,对应awk版加解密程序的PHP实现代码
延伸 · 阅读
- 2019-10-29DataTable转成字符串复制到txt文本的小例子
- 2019-10-29.net调用JScript脚本及JS url加密解密
- 2019-10-29asp.net判断字符串是否是中文的方法
- 2019-10-27Java 将字符串动态生成字节码的实现方法
- 2019-10-27PHP5中的时间相差8小时的解决办法
- 2019-10-27php5中类的学习
精彩推荐
- PHP教程
thinkphp集成前端脚手架Vue-cli的教程图解
这篇文章主要介绍了thinkphp集成前端脚手架Vue-cli的教程图解,本文图文并茂给大家介绍的非常详细,具有一定的参考借鉴价值,需要的朋友可以参考下...
- PHP教程
php将从数据库中获得的数据转换成json格式并输出的方法
今天小编就为大家分享一篇php将从数据库中获得的数据转换成json格式并输出的方法,具有很好的参考价值,希望对大家有所帮助。一起跟随小编过来看看吧...
- PHP教程
PHP与MySQL开发中页面乱码的产生与解决
一般来说,乱码的出现有2种原因,首先是由于编码(charset)设置错误,导致浏览器以错误的编码来解析,从而出现了满屏乱七八糟的天书,其次是文件被以错...
- PHP教程
原生JS实现Ajax通过GET方式与PHP进行交互操作示例
这篇文章主要介绍了原生JS实现Ajax通过GET方式与PHP进行交互操作,涉及javascript ajax交互及php数据接收、处理与数据库查询相关操作技巧,需要的朋友可以参考...
- PHP教程
php识别翻转iphone拍摄的颠倒图片
这篇文章主要介绍了php识别翻转iphone拍摄的颠倒图片,具有一定的参考价值,感兴趣的小伙伴们可以参考一下 ...
- PHP教程
详解PHP实现支付宝小程序用户授权的工具类
这篇文章主要介绍了详解PHP实现支付宝小程序用户授权的工具类,小编觉得挺不错的,现在分享给大家,也给大家做个参考。一起跟随小编过来看看吧...
- PHP教程
PHP实现动态删除XML数据的方法示例
这篇文章主要介绍了PHP实现动态删除XML数据的方法,在前面介绍的Message_XML类基础上进行改进,增加了xml删除功能,具有一定参考借鉴价值,需要的朋友可以参考...
- PHP教程
PHP使Laravel为JSON REST API返回自定义错误的问题
这篇文章主要介绍了PHP使Laravel为JSON REST API返回自定义错误的问题,非常不错,具有一定的参考借鉴价值,需要的朋友可以参考下...