php des加密解密中出现Call to undefined function: mcrypt_get_iv_size(),mcrypt_create_iv()处理...

本文介绍了一种使用PHP实现的数据加密和解密方法,通过定义加密密钥并利用Mcrypt库进行AES256位加密。同时,文章还解决了在Windows环境下使用该库时遇到的常见问题。

摘要生成于 C知道 ,由 DeepSeek-R1 满血版支持, 前往体验 >

$deskey = "12345678";

//Encrypt Function (编码)

function encrypt($encrypt) {
global $deskey;
$iv = mcrypt_create_iv(mcrypt_get_iv_size(MCRYPT_RIJNDAEL_256, MCRYPT_MODE_ECB), MCRYPT_RAND);
$passcrypt = mcrypt_encrypt(MCRYPT_RIJNDAEL_256, $deskey, $encrypt, MCRYPT_MODE_ECB, $iv);
$encode = base64_encode($passcrypt);
return $encode;
}

//Decrypt Function (解码)
function decrypt($decrypt) {
global $deskey;
$decoded = base64_decode($decrypt);
$iv = mcrypt_create_iv(mcrypt_get_iv_size(MCRYPT_RIJNDAEL_256, MCRYPT_MODE_ECB), MCRYPT_RAND);
$decrypted = mcrypt_decrypt(MCRYPT_RIJNDAEL_256, $deskey, $decoded, MCRYPT_MODE_ECB, $iv);
return $decrypted;
}

测试 test.php

echo encrypt("house201172217344028880728")."<br>";
 echo decrypt(encrypt("house201172217344028880728"));

出现啦Call to undefined function: mcrypt_get_iv_size() 解决方法为:copy libmcrypt.dll到window\system32目录 这个肯定没错

但还有重要的一点就是把PHP.ini中的;extension=php_mcrypt.dll  ;去掉及开启加密解密功能

个人测试没有把 libmcrypt.dll 拷贝到window\system32目录因为我的Apache  的httpd.conf配置中指定啦PHPIniDir "c:/php" PHP工作目录

转载于:https://www.cnblogs.com/be-down-to-earth/archive/2012/05/12/2497179.html

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值