php根据当前url生成固定md5

这种方法有一定的概率重复因為仅仅是基于时间戳和随机数的,如果在同一秒内经过太过次的运行导致随机数一样的话,输出结果会是一样的

uniqid()函数基于以微妙计的当湔时间生成一个相对唯一的ID

但是在w3chool参考文献中有一个提示和注释:由于基于系统时间通过

该函数生成的ID不是最佳的。如需生成绝对唯一的ID请使用()函数。

3、  根据guid生成虽然php官方没有内置的guid函数,但是可以自己封装

此方法是把$uid,$guid,时间戳的加密结果组合在一起,再次用非對称加密hash经过128位加密而成其重复的概率无限接近为0

}

看一下应该就是将参数可key进行加密,然后在去byte数组然后将这个数组进行base64加密。

但是php的方法跟java是不一样的无奈我想到的是按照对应方法模仿出来。写个方法然后将数組加密然后获取byte数组,在用数组序列化然后转base64.当然,结果显然出问题了。

我找了个java跟我用相同的参数跟我匹配了一下到byte数组的时候,数组都还是一样的问题就处在了base64转码。于是我跑过去查看java的Base64.encodeBase64String方法发现想仿照着写一个方法出来是个非常困难的事。

非常蒙蔽的查叻很多资料都没有对应的解法。直到我发现我找错方向了。

java没有直接获取base64的方法所以是先获取byte数组,然后通过自己封装的方法转回來但是php是有的。也就是没有必要获取byte数组这一步

 
}

我要回帖

更多关于 php md5 的文章

更多推荐

版权声明:文章内容来源于网络,版权归原作者所有,如有侵权请点击这里与我们联系,我们将及时删除。

点击添加站长微信