php md5下16位和32位的实现代码

yipeiwu_com6年前PHP代码库
复制代码 代码如下:

<?php  
echo substr(md5("admin"),8,16);  // 16位MD5加密  
echo "<hr>";  
echo md5("admin");    // 32位MD5加密  
?>  
  
16位的MD5加密用substr函数截取了字符得到实现.... 

不想深入研究了 :)  要把脑力放到其他关键的地方~~ 

今天做了个php链接mssql数据库,数据库中的表中字段使用MD5十六加密的。但是php中的MD5默认是32位,导致登录程序没办法使用md5加密跟表中字段匹配,在网上一搜也有不少人有这方面的困惑,后来找到一个解决办法,是正确的,就记录下来。

使用substr函数截取:

substr(md5("admin"),8,16); // 16位MD5加密

md5("admin"); // 32位MD5加密

经过【宜配屋www.yipeiwu.com】测试结果如下:

我们以asp的几个md5后的结果比较
附:如果遇到MD5加密文件,而又不知道的密码的,请在数据库中换上这组加密的数据。

admin---16位加密---7a57a5a743894a0e
admin---32位加密---21232f297a57a5a743894a0e4a801fc3
admin---40位加密---7a57a5a743894a0e4a801fc343894a0e4a801fc3

substr(md5("admin"),8,16); // 16位MD5加密 正是上面的32为从第8个字符开始的16个字符。所以大家不用考虑唯一性的问题。本身就是正确的。网上有人说php5支持
复制代码 代码如下:

echo md5("admin",true);//返回16位,不过这是在PHP5里才有。

经测试输出的结果是乱码,如果大家有什么好的代码,可以分享下。

相关文章

PHP会话处理的10个函数

PHP会话处理的10个函数

在PHP开发中,比起Cookie,Session 是存储在服务器端的会话,相对安全,并且不像 Cookie 那样有存储长度限制,这里我们详细介绍一下PHP处理会话函数将要用到10个函数。...

四个PHP非常实用的功能

最近写的几个PHP实用功能整理了一下,弄成一个文档,写上说明,方便以后使用!一共有4个PHP实用功能,现在跟大家分享,喜欢的朋友可以把它收藏起来,说不定以后用得上。 1. PHP函数的任...

Ext.data.PagingMemoryProxy分页一次性读取数据的实现代码

Ext.data.PagingMemoryProxy分页一次性读取数据的实现代码

1 建立get.php get.php=> 复制代码 代码如下: <?php $data=array( array(1,"yixing",123), array(2,"che...

php-perl哈希算法实现(times33哈希算法)

复制代码 代码如下:APR_DECLARE_NONSTD(unsigned int) apr_hashfunc_default(const char *char_key, &n...

php中sprintf与printf函数用法区别解析

下面是一个示例:四舍五入保留小数点后两位 复制代码 代码如下:<?php$num1 = 21;echo sprintf("%0.2f",$num1)."<br />";...