php生成短域名函数

yipeiwu_com6年前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中有关长整数的一些操作教程

PHP中有关长整数的一些操作教程

前言 在PHP,数字类型只有int和float两种,它们的位数取决于系统,而且没有uint,所以跟其它系统通信的时候就有诸多不便。如果int溢出,则自动转换为float,用科学计数法来表...

linux下安装php的memcached客户端

linux下安装php的memcached客户端

下面将介绍安装php的memcached客户端安装步骤 1、下载安装libmemcached客户端 官网地址:http://libmemcached.org/libMemcached.h...

php 如何获取数组第一个值

reset (PHP 3, PHP 4, PHP 5)reset -- 将数组的内部指针指向第一个单元 说明mixed reset ( array &array )reset() 将 a...

php基于dom实现读取图书xml格式数据的方法

本文实例讲述了php基于dom实现读取图书xml格式数据的方法。分享给大家供大家参考,具体如下: <?php $doc = new DOMDocument(); $...

php_screw 1.5:php加密: 安装与使用详解

php文件通常以文本格式存贮在服务器端, 很容易被别人读到源代码, 为了对源代码进行保护, 可以采用对源代码进行加密的方式.要实现该功能需要两部分:一是加密程序,实现对PHP文件的加密....