国产探花免费观看_亚洲丰满少妇自慰呻吟_97日韩有码在线_资源在线日韩欧美_一区二区精品毛片,辰东完美世界有声小说,欢乐颂第一季,yy玄幻小说排行榜完本

首頁 > 語言 > PHP > 正文

PHP隨機生成唯一HASH值自定義函數(shù)

2024-09-04 11:42:41
字體:
供稿:網(wǎng)友

這篇文章主要介紹了PHP隨機生成唯一HASH值自定義函數(shù),本文先是給出了需求,然后給出了實現(xiàn)代碼,需要的朋友可以參考下

網(wǎng)上有很多種方法獲取隨機唯一的HASH值,但是大同小異:

1、先獲取隨機的唯一字符串

2、進行MD5或者sha1算HASH值

一個項目要用到hash值,就去網(wǎng)上找了找,卻發(fā)現(xiàn)PHP有一個函數(shù)能直接生成唯一字符串——uniqid(),通過使用這個函數(shù),再加上自己生成的隨機數(shù)(防止被破解),更具有唯一性且不易被猜解。主要考慮問題如下:

1、隨機的效率與隨機性:rand和mt_rand函數(shù)的選擇,首選mt_rand,效率高,隨機性好;

2、隨機次數(shù):選擇5次,本來unniqid就是唯一的,加上隨機的可以只是增強安全性,5次足矣

3、md5還是sha1:都能生成唯一的hash值,sha1占用資源可能高點,但是微乎其微,如果考慮數(shù)據(jù)庫存儲的小寫,可以使用md5(32位長度)

  1. <?php 
  2. function get_hash(){ 
  3.   $chars = 'ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz0123456789!@#$%^&*()+-'
  4.   $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 
  5.   $content = uniqid().$random;  // 類似 5443e09c27bf4aB4uT 
  6.   return sha1($content);  
  7. echo get_hash(); 
  8. ?>

發(fā)表評論 共有條評論
用戶名: 密碼:
驗證碼: 匿名發(fā)表
主站蜘蛛池模板: 奎屯市| 柞水县| 东宁县| 司法| 宁晋县| 买车| 来安县| 华坪县| 安康市| 都兰县| 宽城| 嘉峪关市| 东乡县| 宣城市| 宜宾市| 千阳县| 柳河县| 华亭县| 大余县| 蓬莱市| 陇川县| 布尔津县| 鲁山县| 成都市| 股票| 托克逊县| 襄垣县| 永春县| 游戏| 彭山县| 固安县| 澄城县| 福安市| 吐鲁番市| 天门市| 永德县| 岐山县| 昭通市| 南城县| 娄烦县| 格尔木市|