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 相关文章推荐
几种显示数据的方法的比较
Oct 09 PHP
Apache, PHP在Windows 9x/NT下的安装与配置 (二)
Oct 09 PHP
php源码加密 仿微盾PHP加密专家(PHPCodeLock)
May 06 PHP
php设计模式 Bridge (桥接模式)
Jun 26 PHP
php 模拟get_headers函数的代码示例
Apr 27 PHP
PHP的变量类型和作用域详解
Mar 12 PHP
CI框架安全类Security.php源码分析
Nov 04 PHP
php针对cookie操作的队列操作类实例
Dec 10 PHP
PHP SPL标准库之数据结构堆(SplHeap)简单使用实例
May 12 PHP
php实现编辑和保存文件的方法
Jul 20 PHP
几个优化WordPress中JavaScript加载体验的插件介绍
Dec 17 PHP
tp5实现微信小程序多图片上传到服务器功能
Jul 16 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的五种设计模式
2012/09/05 PHP
thinkphp3.x中cookie方法的用法分析
2016/05/19 PHP
yii2简单使用less代替css示例
2017/03/10 PHP
解决PHP上传非标准格式的图片pjpeg失败的方法
2017/03/12 PHP
Yii框架通过请求组件处理get,post请求的方法分析
2019/09/03 PHP
jquery.AutoComplete.js中文修正版(支持firefox)
2010/04/09 Javascript
初识javascript 文档碎片
2010/07/13 Javascript
javascript阻止浏览器后退事件防止误操作清空表单
2013/11/22 Javascript
JavaScript中Math对象方法使用概述
2014/01/02 Javascript
Mac OS X 系统下安装和部署Egret引擎开发环境
2014/09/03 Javascript
ajax读取数据后使用jqchart显示图表的方法
2015/06/10 Javascript
如何利用模板将HTML从JavaScript中抽离
2016/10/08 Javascript
jQuery利用sort对DOM元素进行排序操作
2016/11/07 Javascript
jQuery niceScroll滚动条错位问题的解决方法
2018/02/03 jQuery
浅谈vue项目4rs vue-router上线后history模式遇到的坑
2018/09/27 Javascript
Vue cli3 库模式搭建组件库并发布到 npm的流程
2018/10/12 Javascript
前端开发基础javaScript的六大作用
2020/08/06 Javascript
详解Vue的异步更新实现原理
2020/12/22 Vue.js
讲解python参数和作用域的使用
2013/11/01 Python
Python中max函数用法实例分析
2015/07/17 Python
python: 自动安装缺失库文件的方法
2018/10/22 Python
Python如何使用argparse模块处理命令行参数
2019/12/11 Python
Django 解决开发自定义抛出异常的问题
2020/05/21 Python
python报错TypeError: ‘NoneType‘ object is not subscriptable的解决方法
2020/11/05 Python
scrapy在python爬虫中搭建出错的解决方法
2020/11/22 Python
前端面试必备之CSS3的新特性
2017/09/05 HTML / CSS
GNC健安喜美国官网:美国第一营养品牌
2016/07/22 全球购物
 Alo Yoga官网:购买瑜伽服装
2018/06/17 全球购物
Burt’s Bees英国官网:世界领先的天然个人护理品牌
2020/08/17 全球购物
火山动力Java笔试题
2014/06/26 面试题
法学毕业生自我鉴定
2013/11/08 职场文书
学生党员公开承诺书
2014/05/28 职场文书
小学生国庆节演讲稿
2014/09/05 职场文书
2014年依法行政工作总结
2014/11/19 职场文书
民主评议教师党员自我评价
2015/03/04 职场文书
2015年大学班级工作总结
2015/04/28 职场文书