php生成短域名函数


Posted in PHP onMarch 23, 2015

php生成短域名函数

public function createRandCode($string) {
    $code = '';
    $hex_code = '1qaz2wsx3edc4rfv5t-gb6yhn7ujm8ik9ol0p_';
    $now = microtime(true) * 10000;
    $strlen = strlen($hex_code);
 
    $hash_code = hash('sha256', $string);
 
    // 这里会为编码定义一个随机的长度,长度取决于step
    $step = rand(8, 16);
    $count = ceil(strlen($hash_code) / $step);
 
    for($i = 0; $i < $count; $i++) {
      $start = $i * $step;
      $hex_num = substr($hash_code, $start, $step);
      $num = 0x3fffffff & (1 * '0x' . $hex_num);
      $n = $num % $strlen;
      $code .= $hex_code[$n];
    }
 
    return $code;
  }

以上所述就是本文给大家分享的代码的全部内容了,希望大家能够喜欢。

PHP 相关文章推荐
浅析PHP水印技术
Feb 14 PHP
PHP实现多服务器session共享之NFS共享的方法
Mar 16 PHP
PHP clearstatcache()函数详解
Mar 02 PHP
php全局变量和类配合使用深刻理解
Jun 05 PHP
探讨如何使用SimpleXML函数来加载和解析XML文档
Jun 07 PHP
ThinkPHP权限认证Auth实例详解
Jul 22 PHP
PHP中Fatal error session_start()错误解决步骤
Aug 05 PHP
PHP中SESSION的注销与清除
Apr 16 PHP
修复ShopNC使用QQ 互联时提示100010 错误
Nov 08 PHP
PHP实现基于图的深度优先遍历输出1,2,3...n的全排列功能
Nov 10 PHP
Thinkphp5 微信公众号token验证不成功的原因及解决方法
Nov 12 PHP
Yii框架模拟组件调用注入示例
Nov 11 PHP
PHP随机生成信用卡卡号的方法
Mar 23 #PHP
PHP实现通过Luhn算法校验信用卡卡号是否有效
Mar 23 #PHP
php实现Mongodb自定义方式生成自增ID的方法
Mar 23 #PHP
php实现约瑟夫问题的方法小结
Mar 23 #PHP
php约瑟夫问题解决关于处死犯人的算法
Mar 23 #PHP
PHP贪婪算法解决0-1背包问题实例分析
Mar 23 #PHP
PHP回溯法解决0-1背包问题实例分析
Mar 23 #PHP
You might like
第十节 抽象方法和抽象类 [10]
2006/10/09 PHP
php根据isbn书号查询amazon网站上的图书信息的示例
2014/02/13 PHP
在Debian系统下配置LNMP的教程
2015/07/09 PHP
PHP的数组中提高元素查找与元素去重的效率的技巧解析
2016/03/03 PHP
分享php多功能图片处理类
2016/05/15 PHP
php使用strip_tags()去除html标签仍有空白的解决方法
2016/07/28 PHP
JavaScript对象链式操作代码(jquery)
2010/07/04 Javascript
jquery中的mouseleave和mouseout的区别 模仿下拉框效果
2012/02/07 Javascript
jQuery学习笔记 操作jQuery对象 CSS处理
2012/09/19 Javascript
JavaScript 垃圾回收机制分析
2013/10/10 Javascript
用JS在浏览器中创建下载文件
2014/03/05 Javascript
javascript制作的cookie封装及使用指南
2015/01/02 Javascript
jQuery Real Person验证码插件防止表单自动提交
2015/11/06 Javascript
javascript使用闭包模拟对象的私有属性和方法
2016/10/05 Javascript
微信小程序 表单Form实例详解(附源码)
2016/12/22 Javascript
用jQuery旋转插件jqueryrotate制作转盘抽奖
2017/02/10 Javascript
小程序实现左滑删除功能
2018/10/30 Javascript
小程序实现新用户判断并跳转激活的方法
2019/05/20 Javascript
微信小程序如何播放腾讯视频的实现
2019/09/20 Javascript
JS数组方法concat()用法实例分析
2020/01/18 Javascript
Vue——前端生成二维码的示例
2020/12/19 Vue.js
[01:34]完美“圣”典宣传片震撼发布,12.17与你不见不散
2016/12/16 DOTA
[33:17]OG vs VGJ.T 2018国际邀请赛小组赛BO2 第二场 8.18
2018/08/19 DOTA
Python实现压缩文件夹与解压缩zip文件的方法
2018/09/01 Python
python根据时间获取周数代码实例
2019/09/30 Python
Python Collatz序列实现过程解析
2019/10/12 Python
Python爬虫爬取煎蛋网图片代码实例
2019/12/16 Python
日本钓鱼渔具和户外用品网上商店:naturum
2016/08/07 全球购物
美国首屈一指的礼品篮供应商:GiftTree
2018/01/06 全球购物
戴森西班牙官网:Dyson西班牙
2020/02/04 全球购物
澳大利亚最早和最古老的巨型游戏专家:Yardgames
2020/02/20 全球购物
25道Java面试题集合
2013/05/21 面试题
留学自荐信的技巧
2013/10/17 职场文书
创建学习型党组织实施方案
2014/03/29 职场文书
2015年社区科普工作总结
2015/05/13 职场文书
PHP 对接美团大众点评团购券(门票)的开发步骤
2021/04/03 PHP