手机
当前位置:查字典教程网 >编程开发 >php教程 >PHP随机生成唯一HASH值自定义函数
PHP随机生成唯一HASH值自定义函数
摘要:网上有很多种方法获取随机唯一的HASH值,但是大同小异:1、先获取随机的唯一字符串2、进行MD5或者sha1算HASH值一个项目要用到has...

网上有很多种方法获取随机唯一的HASH值,但是大同小异:

1、先获取随机的唯一字符串

2、进行MD5或者sha1算HASH值

一个项目要用到hash值,就去网上找了找,却发现PHP有一个函数能直接生成唯一字符串——uniqid(),通过使用这个函数,再加上自己生成的随机数(防止被破解),更具有唯一性且不易被猜解。主要考虑问题如下:

1、随机的效率与随机性:rand和mt_rand函数的选择,首选mt_rand,效率高,随机性好;

2、随机次数:选择5次,本来unniqid就是唯一的,加上随机的可以只是增强安全性,5次足矣

3、md5还是sha1:都能生成唯一的hash值,sha1占用资源可能高点,但是微乎其微,如果考虑数据库存储的小写,可以使用md5(32位长度)

<?php function get_hash(){ $chars = 'ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz0123456789!@#$%^&*()+-'; $random = $chars[mt_rand(0,73)].$chars[mt_rand(0,73)].$chars[mt_rand(0,73)].$chars[mt_rand(0,73)].$chars[mt_rand(0,73)];//Random 5 times $content = uniqid().$random; // 类似 5443e09c27bf4aB4uT return sha1($content); } echo get_hash(); ?>

【PHP随机生成唯一HASH值自定义函数】相关文章:

PHP生成json和xml类型接口数据格式

用PHP生成自己的LOG文件

PHP中生成UUID自定义函数分享

PHP的栏目导航程序

PHP脚本的10个技巧(5)

PHP脚本的10个技巧(2)

PHP超牛逼无限极分类生成树方法

PHP模拟SQL Server的两个日期处理函数

PHP脚本的10个技巧(3)

编写自己的php扩展函数

精品推荐
分类导航