パスワードを保存する前に誤ってハッシュを停止したため、データベースにはMD5パスワードとハッシュされていないパスワードが混在しています。
MD5ではないものをループしてハッシュしたいです。文字列がMD5ハッシュかどうかを確認することは可能ですか?
次の機能を使用して確認できます。
function isValidMd5($md5 ='')
{
return preg_match('/^[a-f0-9]{32}$/', $md5);
}
echo isValidMd5('5d41402abc4b2a76b9719d911017c592');
MD5(Message-digest algorithm)ハッシュは通常、32桁の16進数としてテキスト形式で表されます。
この関数は以下をチェックします:
少し速いかもしれません:
function isValidMd5($md5 ='') {
return strlen($md5) == 32 && ctype_xdigit($md5);
}