md5加密的坑
代码示例:
两个不一样的字符串md5加密后对比竟然相等?
解释: 由于代码示例里面的两个字符串md5()加密后都生成了以 0e 开头的32位十六进制数 ,在使用'!=' 或 '==' 时将以 0e 开头的哈希值隐式转化成了 0 ,最后对比起来就是相等的结果。最好是使用 '===' 来做对比比较靠谱。
md5('s878926199a'): 0e545993274517709034328855841020
md5('QNKCDZO') : 0e830400451993494058024219903391