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 相关文章推荐
查找mysql字段中固定字符串并替换的几个方法
Sep 23 PHP
鸡肋的PHP单例模式应用详解
Jun 03 PHP
php多文件上传下载示例分享
Feb 20 PHP
PHP使用Alexa API获取网站的Alexa排名例子
Jun 12 PHP
php打印输出棋盘的实现方法
Dec 23 PHP
PHP 实现代码复用的一个方法 traits新特性
Feb 22 PHP
php获取本周星期一具体日期的方法
Apr 20 PHP
PHP+Apache环境中如何隐藏Apache版本
Nov 24 PHP
详解PHP素材图片上传、下载功能
Apr 12 PHP
PHP观察者模式实例分析【对比JS观察者模式】
May 22 PHP
php实现大文件断点续传下载实例代码
Oct 01 PHP
PHP call_user_func和call_user_func_array函数的简单理解与应用分析
Nov 25 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
对squid中refresh_pattern的一些理解和建议
2009/04/17 PHP
使用php实现从身份证中提取生日
2016/05/09 PHP
对laravel的session获取与存取方法详解
2019/10/08 PHP
javascript 动态修改样式和层叠样式表代码
2010/04/27 Javascript
基于Jquery的表格隔行换色,移动换色,点击换色插件
2010/12/22 Javascript
js获取RadioButtonList的Value/Text及选中值等信息实现代码
2013/03/05 Javascript
jQuery表单获取和失去焦点输入框提示效果的实例代码
2013/08/01 Javascript
利用jQuary实现文字浮动提示效果示例代码
2013/12/26 Javascript
JQuery ztree带筛选、异步加载实例讲解
2016/02/25 Javascript
JavaScript实现点击按钮字体放大、缩小
2016/02/29 Javascript
JAVA Web实时消息后台服务器推送技术---GoEasy
2016/11/04 Javascript
详解Angular2中Input和Output用法及示例
2017/05/21 Javascript
Nodejs Express 通过log4js写日志到Logstash(ELK)
2018/08/30 NodeJs
15 分钟掌握vue-next响应式原理
2019/10/13 Javascript
vue a标签点击实现赋值方式
2020/09/07 Javascript
[01:09]2014DOTA2国际邀请赛 TI4西雅图DOTA2 中国美女coser加油助威
2014/07/20 DOTA
[42:56]VGJ.S vs Serenity 2018国际邀请赛小组赛BO2 第二场 8.19
2018/08/21 DOTA
windows系统中python使用rar命令压缩多个文件夹示例
2014/05/06 Python
详解Python多线程Selenium跨浏览器测试
2017/04/01 Python
Python编程实现二分法和牛顿迭代法求平方根代码
2017/12/04 Python
使用Selenium破解新浪微博的四宫格验证码
2018/10/19 Python
Python调用Windows API函数编写录音机和音乐播放器功能
2020/01/05 Python
Django扫码抽奖平台的配置过程详解
2021/01/14 Python
CSS3哪些新特性值得称赞
2016/03/02 HTML / CSS
优秀毕业生自我鉴定
2014/01/19 职场文书
主要负责人任命书
2014/06/06 职场文书
新农村建设标语
2014/06/24 职场文书
应届本科毕业生求职信
2014/07/23 职场文书
小学生感恩老师演讲稿
2014/08/28 职场文书
考试没考好检讨书(精选篇)
2014/11/16 职场文书
堂吉诃德读书笔记
2015/06/30 职场文书
大学生支教感言
2015/08/01 职场文书
《西门豹》教学反思
2016/02/23 职场文书
公开致歉信
2019/06/24 职场文书
《敬重卑微》读后感3篇
2019/11/26 职场文书
MySQL 原理优化之Group By的优化技巧
2022/08/14 MySQL