php 怎么替换mcrypt
2022-12-02 09:01:16
219
{{single.collect_count}}

php替换mcrypt的方法:1、打开相应的php文件;2、找到原来的加密和解密代码;3、使用“openssl_encrypt”以及“openssl_decrypt”方法进行替代即可。

php入门到就业线上直播课:进入学习
Apipost = Postman + Swagger + Mock + Jmeter 超好用的API调试工具:点击使用

本教程操作环境:windows7系统、PHP8.1版、Dell G3电脑。

php 怎么替换mcrypt?

php7.4中 mcrypt加解密替代方案

问题描述

mcrypt_encrypt以及mcrypt_decrypt函数自PHP 7.1.0 起已废弃,原来项目(php5.6)中使用的mcrypt_encrypt和mcrypt_decrypt函数,在php7.1以及之后的环境中使用时会提示函数找不到,需要使用openssl_encrypt以及openssl_decrypt进行替代。

解决方案

********************加密***********************

<?php/** * 原加密方法方法 * @param $str * @param string $key * @return string */function des_encrypt($str, $key='uK9pFn56') {$block = mcrypt_get_block_size('des', 'ecb');$pad = $block - (strlen($str) % $block);$str .= str_repeat(chr($pad), $pad);return base64_encode(mcrypt_encrypt(MCRYPT_DES, $key, $str, MCRYPT_MODE_ECB));}$str = "123123";var_dump(des_encrypt($str));//加密结果:BKG4i231OB0=
登录后复制
<?php/** * openssl_encrypt加密替代方法 * @param $str * @param string $key * @return string */function des_encrypt($str, $key = 'uK9pFn56'){return base64_encode(openssl_encrypt($str, "DES-ECB", $key, OPENSSL_RAW_DATA, ""));}$str = "123123";var_dump(des_encrypt($str));//加密结果:BKG4i231OB0=
登录后复制

**********************解密************************

/** * 原解密方法 * @param $str * @param string $key * @return string */function des_decrypt($str, $key='uK9pFn56') {$str = mcrypt_decrypt(MCRYPT_DES, $key, base64_decode($str), MCRYPT_MODE_ECB);$len = strlen($str);$block = mcrypt_get_block_size('des', 'ecb');$pad = ord($str[$len - 1]);return substr($str, 0, $len - $pad);}var_dump(des_decrypt("BKG4i231OB0="));//解密结果:123123
登录后复制
/** * openssl_encrypt解密替代方法 * @param $str * @param string $key * @return string */function des_decrypt($str, $key = 'uK9pFn56'){return openssl_decrypt(base64_decode($str), "DES-ECB", $key, OPENSSL_RAW_DATA, "");}var_dump(des_decrypt("BKG4i231OB0="));//解密结果:123123
登录后复制

推荐学习:《PHP视频教程

以上就是php 怎么替换mcrypt的详细内容,更多请关注php中文网其它相关文章!

回帖
全部回帖({{commentCount}})
{{item.user.nickname}} {{item.user.group_title}} {{item.friend_time}}
{{item.content}}
{{item.comment_content_show ? '取消' : '回复'}} 删除
回帖
{{reply.user.nickname}} {{reply.user.group_title}} {{reply.friend_time}}
{{reply.content}}
{{reply.comment_content_show ? '取消' : '回复'}} 删除
回帖
收起
没有更多啦~
{{commentLoading ? '加载中...' : '查看更多评论'}}