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 相关文章推荐
劣质的PHP代码简化
Feb 08 PHP
php array_walk() 数组函数
Jul 12 PHP
20个PHP常用类库小结
Sep 11 PHP
php中批量修改文件后缀名的函数代码
Oct 23 PHP
php和mysql中uft-8中文编码乱码的几种解决办法
Apr 19 PHP
CodeIgniter中实现泛域名解析
Jul 19 PHP
php禁止直接从浏览器输入地址访问.php文件的方法
Nov 04 PHP
PHP生成压缩文件实例
Feb 07 PHP
PHP+Mysql+jQuery中国地图区域数据统计实例讲解
Oct 10 PHP
PHP下 Mongodb 连接远程数据库的实例代码
Aug 30 PHP
laravel-admin的图片删除实例
Sep 30 PHP
TP5框架实现的数据库备份功能示例
Apr 05 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
PHP第一季视频教程(李炎恢+php100 不断更新)
2011/05/29 PHP
php加密之discuz内容经典加密方式实例详解
2017/02/04 PHP
PHP使用HTML5 FileApi实现Ajax上传文件功能示例
2019/07/01 PHP
javascript 在firebug调试时用console.log的方法
2012/05/10 Javascript
Javascript中的delete介绍
2012/09/02 Javascript
javascript中interval与setTimeOut的区别示例介绍
2014/03/14 Javascript
JavaScript字符串对象toLowerCase方法入门实例(用于把字母转换为小写)
2014/10/17 Javascript
全系IE支持Bootstrap的解决方法
2015/10/19 Javascript
Angularjs自定义指令实现三级联动 选择地理位置
2017/02/13 Javascript
从零开始学习Node.js系列教程四:多页面实现的数学运算示例
2017/04/13 Javascript
jQuery解析json格式数据示例
2018/09/01 jQuery
vue中使用vue-cli接入融云实现即时通信
2019/04/19 Javascript
js中火星坐标、百度坐标、WGS84坐标转换实现方法示例
2020/03/02 Javascript
python3.3使用tkinter开发猜数字游戏示例
2014/03/14 Python
Python单元测试框架unittest使用方法讲解
2015/04/13 Python
利用Tkinter和matplotlib两种方式画饼状图的实例
2017/11/06 Python
python去除扩展名的实例讲解
2018/04/23 Python
python 实现语音聊天机器人的示例代码
2018/12/02 Python
selenium+python自动化测试环境搭建步骤
2019/06/03 Python
centos7之Python3.74安装教程
2019/08/15 Python
手机使用python操作图片文件(pydroid3)过程详解
2019/09/25 Python
AmazeUI 图标的示例代码
2020/08/13 HTML / CSS
英国领先的瓷砖专家:Walls and Floors
2018/04/27 全球购物
Stuarts London美国/加拿大:世界领先的独立男装零售商之一
2019/03/18 全球购物
波兰化妆品和护肤品购物网站:eKobieca
2019/08/30 全球购物
加拿大大码女装购物网站:Penningtons
2020/12/26 全球购物
NFL官方在线商店:NFLShop
2020/07/29 全球购物
出国留学经济担保书
2014/04/01 职场文书
党支部换届选举方案
2014/05/08 职场文书
银行授权委托书范本
2014/10/04 职场文书
承诺书范本
2015/01/21 职场文书
土建技术员岗位职责
2015/04/11 职场文书
小学秋季运动会通讯稿
2015/11/25 职场文书
2016年法制宣传月活动总结
2016/04/01 职场文书
python 实现的截屏工具
2021/05/08 Python
解决SpringBoot跨域的三种方式
2021/06/26 Java/Android