我不小心在存储密码之前停止了哈希密码,所以现在我的数据库混合了 MD5 密码和未哈希密码。
我想遍历并散列那些不是 MD5 的。是否可以检查字符串是否为 MD5 哈希?
您可以使用以下功能进行检查:
function isValidMd5($md5 ='')
{
return preg_match('/^[a-f0-9]{32}$/', $md5);
}
echo isValidMd5('5d41402abc4b2a76b9719d911017c592');
MD5(消息摘要算法)哈希通常以文本格式表示为 32 位十六进制数。
该函数检查:
也许更快一点:
function isValidMd5($md5 ='') {
return strlen($md5) == 32 && ctype_xdigit($md5);
}