php短网址和数字之间相互转换的方法


Posted in PHP onMarch 13, 2015

本文实例讲述了php短网址和数字之间相互转换的方法。分享给大家供大家参考。具体实现方法如下:

<?php
/**
 * 将数字转为短网址代码
 *
 * @param int $number 数字
 * @return string 短网址代码
 */
function generate_code($number) {
  $out  = "";
  $codes = "abcdefghjkmnpqrstuvwxyz23456789ABCDEFGHJKMNPQRSTUVWXYZ";
  while ($number > 53) {
    $key  = $number % 54;
    $number = floor($number / 54) - 1;
    $out  = $codes{$key}.$out;
  }
  return $codes{$number}.$out;
}
/**
 * 将短网址代码转为数字
 *
 * @param string $code 短网址代码
 * @return int 数字
 */
function get_num($code){
  $codes = "abcdefghjkmnpqrstuvwxyz23456789ABCDEFGHJKMNPQRSTUVWXYZ";
  $num = 0;
  $i = strlen($code);
 for($j=0;$j<strlen($code);$j++){
    $i--;
    $char = $code{$j};
    $pos = strpos($codes,$char);
    $num += (pow(54, $i) * ($pos + 1));
  }
  $num--;
  return $num;
}

希望本文所述对大家的php程序设计有所帮助。

PHP 相关文章推荐
JAVA/JSP学习系列之六
Oct 09 PHP
落伍首发 php+mysql 采用ajax技术的 省 市 地 3级联动无刷新菜单 源码
Dec 16 PHP
php park、unpark、ord 函数使用方法(二进制流接口应用实例)
Oct 19 PHP
PHP URL路由类实例
Nov 12 PHP
php文件操作相关类实例
Jun 18 PHP
Json_encode防止汉字转义成unicode的方法
Feb 25 PHP
php mysql procedure实现获取多个结果集的方法【基于thinkPHP】
Nov 09 PHP
php实现基于PDO的预处理示例
Mar 28 PHP
php图片合成方法(多张图片合成一张)
Nov 25 PHP
PHP使用pdo实现事务处理操作示例
Sep 05 PHP
php文件包含的几种方式总结
Sep 19 PHP
Thinkphp5.0框架的Db操作实例分析【连接、增删改查、链式操作等】
Oct 11 PHP
PHP获取一段文本显示点阵宽度和高度的方法
Mar 12 #PHP
PHP实现自动对图片进行滚动显示的方法
Mar 12 #PHP
PHP使用ffmpeg给视频增加字幕显示的方法
Mar 12 #PHP
PHP从FLV文件获取视频预览图的方法
Mar 12 #PHP
PHP简单获取视频预览图的方法
Mar 12 #PHP
php使用memcoder将视频转成mp4格式的方法
Mar 12 #PHP
PHP实现将视频转成MP4并获取视频预览图的方法
Mar 12 #PHP
You might like
全国FM电台频率大全 - 2 天津市
2020/03/11 无线电
Zerg兵种介绍
2020/03/14 星际争霸
解析如何去掉CodeIgniter URL中的index.php
2013/06/25 PHP
PHP的反射类ReflectionClass、ReflectionMethod使用实例
2014/08/05 PHP
php实现多维数组中每个单元值(数字)翻倍的方法
2015/02/16 PHP
处理文本部分内容的TextRange对象应用实例
2014/07/29 Javascript
jQuery自制提示框tooltip改进版
2016/08/01 Javascript
AngularJS基础 ng-model 指令详解及示例代码
2016/08/02 Javascript
JS定时器用法分析【时钟与菜单中的应用】
2016/12/21 Javascript
简单介绍react redux的中间件的使用
2018/04/06 Javascript
JS中call和apply函数用法实例分析
2018/06/20 Javascript
JS获取指定月份的天数两种实现方法
2018/06/22 Javascript
js动态设置select下拉菜单的默认选中项实例
2018/08/21 Javascript
vue2过滤器模糊查询方法
2018/09/16 Javascript
使用Vuex解决Vue中的身份验证问题
2018/09/28 Javascript
el-input 标签中密码的显示和隐藏功能的实例代码
2019/07/19 Javascript
Vue修改项目启动端口号方法
2019/11/07 Javascript
jQuery实现鼠标放置名字上显示详细内容气泡提示框效果的方法分析
2020/04/04 jQuery
Vue中正确使用Element-UI组件的方法实例
2020/10/13 Javascript
[44:50]2018DOTA2亚洲邀请赛 4.1 小组赛 A组 TNC vs VG
2018/04/02 DOTA
python程序控制NAO机器人行走
2019/04/29 Python
Python Gluon参数和模块命名操作教程
2019/12/18 Python
Python scrapy增量爬取实例及实现过程解析
2019/12/24 Python
利用 PyCharm 实现本地代码和远端的实时同步功能
2020/03/23 Python
使用BeautifulSoup4解析XML的方法小结
2020/12/07 Python
python 实现一个简单的线性回归案例
2020/12/17 Python
aec加密 php_php aes加密解密类(兼容php5、php7)
2021/03/14 PHP
加拿大奢华时装品牌:Mackage
2018/01/10 全球购物
JackJones官方旗舰店:杰克琼斯男装
2018/03/27 全球购物
华为慧通笔试题
2016/04/22 面试题
什么是TCP/IP
2014/07/27 面试题
高三上学期学习自我评价
2014/04/23 职场文书
消防工作实施方案
2014/06/09 职场文书
学习十八大标语
2014/10/09 职场文书
道路交通事故赔偿协议书
2014/10/24 职场文书
自我推荐信格式模板
2015/03/24 职场文书