php生成短域名函数

yipeiwu_com7年前PHP代码库

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面向对象五大原则之单一职责原则(SRP)详解

本文实例讲述了PHP面向对象五大原则之单一职责原则(SRP)。分享给大家供大家参考,具体如下: 单一职责原则(Single Pesponsibility Principle, SRP)...

PHP设置头信息及取得返回头信息的方法

本文实例讲述了PHP设置头信息及取得返回头信息的方法。分享给大家供大家参考,具体如下: 设置请求的头信息,我们可以用header函数,可以用fsockopen,可以用curl等,本文主要...

PHP模拟QQ登录的方法

本文实例讲述了PHP模拟QQ登录的方法。分享给大家供大家参考。具体实现方法如下: 原理是用curl模拟发送post登录,cookie保存本地 这样理论上可以支持永久单挂QQ <...

PHP实现上一篇下一篇的方法实例总结

本文实例分析了PHP实现上一篇下一篇的方法。分享给大家供大家参考,具体如下: php实现上一篇下一篇这个主要是通过sql来根据当前的id来进行判断然后筛选出当前ID之前的数据或ID之后的...

php字符串分割函数用法实例

本文实例讲述了php字符串分割函数用法。分享给大家供大家参考。具体分析如下: php中explode 和 split 函数用来分割字符串。 explode函数语法如下 explode...