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 相关文章推荐
discuz Passport 通行证 整合笔记
Jun 30 PHP
PHP写MySQL数据 实现代码
Jun 15 PHP
将文件夹压缩成zip文件的php代码
Dec 14 PHP
PHP验证码类代码( 最新修改,完全定制化! )
Dec 02 PHP
javascript,php获取函数参数对象的代码
Feb 03 PHP
php 定界符格式引起的错误
May 24 PHP
php中fsockopen用法实例
Jan 05 PHP
PHP定时执行任务的3种方法详解
Dec 21 PHP
PHP实现根据时间戳获取周几的方法
Feb 26 PHP
php 中奖概率算法实现代码
Jan 25 PHP
Laravel如何使用Redis共享Session
Feb 23 PHP
PHP实现长轮询消息实时推送功能代码实例讲解
Feb 26 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
PHP DataGrid 实现代码
2009/08/12 PHP
php+xml编程之xpath的应用实例
2015/01/24 PHP
PHP在innodb引擎下快速代建全文搜索功能简明教程【基于xunsearch】
2016/10/14 PHP
PHP应用跨时区功能的实现方法
2019/03/21 PHP
PHP二维索引数组的遍历实例分析【2种方式】
2019/06/24 PHP
基于thinkphp5框架实现微信小程序支付 退款 订单查询 退款查询操作
2020/08/17 PHP
又一个图片自动缩小的JS代码
2007/03/10 Javascript
JQuery的ajax获取数据后的处理总结(html,xml,json)
2010/07/14 Javascript
js中substring和substr的详细介绍与用法
2013/08/29 Javascript
JS数组去重与取重的示例代码
2014/01/24 Javascript
Javascript检查图片大小不要让大图片撑破页面
2014/11/04 Javascript
简介可以自动完成UI的AngularJS工具angular-smarty
2015/06/23 Javascript
JavaScript实现显示函数调用堆栈的方法
2016/04/21 Javascript
通用无限极下拉菜单的实现代码
2016/05/31 Javascript
基于JavaScript实现单选框下拉菜单添加文件效果
2016/06/26 Javascript
Angularjs中使用layDate日期控件示例
2017/01/11 Javascript
基于Bootstrap模态对话框只加载一次 remote 数据的解决方法
2017/07/09 Javascript
es6数组之扩展运算符操作实例分析
2020/04/25 Javascript
[04:49]期待西雅图之战 2016国际邀请赛中国区预选赛WINGS战队赛后采访
2016/06/29 DOTA
python中的set实现不重复的排序原理
2018/01/24 Python
python多进程控制学习小结
2018/10/31 Python
在python中按照特定顺序访问字典的方法详解
2018/12/14 Python
django model通过字典更新数据实例
2020/04/01 Python
keras多显卡训练方式
2020/06/10 Python
Django实现微信小程序支付的示例代码
2020/09/03 Python
如何进行有效的自我评价
2013/09/27 职场文书
ktv中秋节活动方案
2014/01/30 职场文书
领导班子个人对照检查材料(群众路线)
2014/09/26 职场文书
《改造我们的学习》心得体会
2014/11/07 职场文书
优秀校长事迹材料
2014/12/24 职场文书
趣味运动会简讯
2015/07/20 职场文书
社区干部培训心得体会
2016/01/06 职场文书
2016党校培训心得体会
2016/01/07 职场文书
python实现简单反弹球游戏
2021/04/12 Python
python文件名批量重命名脚本实例代码
2021/04/22 Python
Mybatis-plus在项目中的简单应用
2021/07/01 Java/Android