)将长网址md 生成 位签名串 分为 段 每段 个字节

)对这四段循环处理 取 个字节 将他看成 进制串与 x fffffff( 位 )与操作 即超过 位的忽略处理

)这 位分成 段 每 位的数字作为字母表的索引取得特定字符 依次进行获得 位字符串

)总的md 串可以获得 个 位串 取里面的任意一个就可作为这个长url的短url地址

下面是PHP代码

function shorturl($url= $prefix= $suffix= ) {

$base = array (

a b c d e f g h

i j k l m n o p

q r s t u v w x

y z )

$hex = md ($prefix $url $suffix)

$hexLen = strlen($hex)

$subHexLen = $hexLen /

$output = array()

for ($i = $i < $subHexLen $i++) {

$subHex = substr ($hex $i * )

$int = x FFFFFFF & ( * ( x $subHex))

$out =

for ($j = $j < $j++) {

$val = x F & $int

$out = $base [$val]

$int = $int >>

}

$output[] = $out

}

return $output

}

$urls = shorturl( )

php版本算法,微博短链接算法PHP版本相关推荐

  1. php 短网址 算法,微博短链接算法PHP版本_php

    思路: 1)将长网址md5生成32位签名串,分为4段, 每段8个字节; 2)对这四段循环处理, 取8个字节, 将他看成16进制串与0x3fffffff(30位1)与操作, 即超过30位的忽略处理; 3 ...

  2. php短连接解析,微博短链接算法php版本实现代码

    思路: 1)将长网址md5生成32位签名串,分为4段, 每段8个字节; 2)对这四段循环处理, 取8个字节, 将他看成16进制串与0x3fffffff(30位1)与操作, 即超过30位的忽略处理; 3 ...

  3. 微博短链接的生成算法(Java版本)

    最近看到微博的短链接真是很火啊,新浪.腾讯.搜狐等微博网站都加入了短链接的功能.之所以要是使用短链接,主要是因为微博只允许发140 字,如果链接地址太长的话,那么发送的字数将大大减少.短链接的主要职责 ...

  4. java短链接原理_微博短链接的生成算法(Java版本)

    最近看到微博的短链接真是很火啊,新浪.腾讯.搜狐等微博网站都加入了短链接的功能.之所以要是使用短链接,主要是因为微博只允许发140 字,如果链接地址太长的话,那么发送的字数将大大减少.短链接的主要职责 ...

  5. 微博短链接的生成算法(Java 版本)

    最近看到微博的短链接真是很火啊,新浪.腾讯.搜狐等微博网站都加入了短链接的功能.之所以要是使用短链接,主要是因为微博只允许发140字,如果链接地址太长的话,那么发送的字数将大大减少.短链接的主要职责就 ...

  6. 长URL链接转短链接算法

    引言 很多大型网站都加入了短链接的功能.之所以要是使用短链接,主要是因为微博只允许发140 字,如果链接地址太长的话,那么发送的字数将大大减少.短链接的主要职责就是把原始链接很长的地址压缩成只有6 个 ...

  7. MurmurHash 算法生成短链接

    生成短链接 参考 短链接设计和思考_新猿一马的博客-CSDN博客_短连接设计 https://mp.weixin.qq.com/s/dN7XZbyz5vyeJO2sd6tudA 网址大家都知道,很长的 ...

  8. 微博短链接解析ShortUrl

    1.为什么用短链 短网址应用已经在各大微博上开始流行了起来.例如QQ微博的url.cn,新郎的sinaurl.cn等. 我们在QQ微博上发布网址的时候,微博会自动判别网址,并将其转换,例如:http: ...

  9. Java实现还原微博短链接

    依赖 <!-- https://mvnrepository.com/artifact/com.squareup.okhttp3/okhttp --><dependency>&l ...

最新文章

  1. android ListView详解
  2. 大话设计模式读书笔记11----建造者模式(Builder)
  3. finereport 格式化金额函数_帆软报表(finereport)常用函数
  4. ACM-Maximum Tape Utilization Ratio
  5. 计算方法c语言上机作业,考研复试-----C语言上机操作(三)
  6. 程序员如何年薪百万?深度学习必读书籍!
  7. Open3D 欧式聚类
  8. 解决百度文库文档内容无法复制
  9. 如何将HTML与win10桌面壁纸,如何在Windows 10中将页面设置为桌面背景 | MOS86
  10. Android编程权威指南(第31章 定制视图与触摸事件)
  11. matlab狄利克雷函数,数论入门1——莫比乌斯函数,欧拉函数,狄利克雷卷积,线性筛,莫比乌斯反演,杜教筛...
  12. 物联网专业并不好_在广阔的物联网中,“智能”仍然并不意味着安全
  13. Cisco ASA防火墙——远程控制与多安全区域
  14. 火地晉 (易經大意 韓長庚)
  15. 项立刚:乔布斯展现了人类无尽的创造力
  16. Hadoop学习——Hadoop概述
  17. mesh 协调器 路由器_双模网络协调器、双模路由器、双模mesh组网系统及其方法与流程...
  18. 为什么要做巧推整站快速排名SEO优化?
  19. 精品韩国美食西餐厅介绍PPT模板
  20. 读懂消费贷款之中国消费金融发展史

热门文章

  1. Vant可靠的移动端组件库
  2. 用户体验地图案例:走访大众点评成都范围烤鸭评价最高的餐厅
  3. Leetcode题763、划分字母区间(Python题解)
  4. 三种截取字符串的方法
  5. 系统管理命令之whoami
  6. 十大经典排序算法(Java实现)
  7. 一款非常精美的HTML响应式动画效果博客幻灯片
  8. java周末班_Java周末班真的适合你吗?
  9. 2020天猫双十一天天开彩蛋怎么玩
  10. “拨”出数位上的数字 - 多种思路实现反向输出一个四位数