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 相关文章推荐
linux环境apache多端口配置虚拟主机的方法深入介绍
Jun 09 PHP
PHP 冒泡排序 二分查找 顺序查找 二维数组排序算法函数的详解
Jun 25 PHP
ThinkPHP模板IF标签用法详解
Jul 01 PHP
php获取文章上一页与下一页的方法
Dec 01 PHP
php使用PDO方法详解
Dec 27 PHP
php实现Linux服务器木马排查及加固功能
Dec 29 PHP
php去除html标记的原生函数详解
Jan 27 PHP
php自动识别文字编码并转换为目标编码的方法
Aug 08 PHP
PHP使用反射机制实现查找类和方法的所在位置
Apr 22 PHP
PHP 5.6.11中CURL模块问题的解决方法
Aug 08 PHP
thinkphp实现分页显示功能
Dec 03 PHP
Django 标签筛选的实现代码(一对多、多对多)
Sep 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 第二节 数据类型之转换
2012/04/28 PHP
php实现对象克隆的方法
2015/06/20 PHP
php验证码实现代码(3种)
2015/09/07 PHP
php实现购物车功能(以大苹果购物网为例)
2017/03/09 PHP
让mayfish支持mysqli数据库驱动的实现方法
2010/05/22 Javascript
js post方式传递提交的实现代码
2010/05/31 Javascript
js中escape对应的C#解码函数 UrlDecode
2012/12/16 Javascript
JS网页播放声音实现代码兼容各种浏览器
2013/09/22 Javascript
jQuery使用toggleClass方法动态添加删除Class样式的方法
2015/03/26 Javascript
利用js实现禁止复制文本信息
2015/06/03 Javascript
JQuery遍历DOM节点的方法
2015/06/11 Javascript
jQuery 跨域访问解决原理案例详解
2016/07/09 Javascript
用js动态添加html元素,以及属性的简单实例
2016/07/19 Javascript
JavaScript给每一个li节点绑定点击事件的实现方法
2016/12/01 Javascript
jQuery实现文字自动横移
2017/01/08 Javascript
jQuery.Form上传文件操作
2017/02/05 Javascript
详解nodejs微信公众号开发——1.接入微信公众号
2017/04/10 NodeJs
详解vue 模拟后台数据(加载本地json文件)调试
2017/08/25 Javascript
解决Js先触发失去焦点事件再执行点击事件的问题
2018/08/30 Javascript
[05:11]TI9战队采访——VIRTUSPRO
2019/08/22 DOTA
python读写ini文件示例(python读写文件)
2014/03/25 Python
基于Python中单例模式的几种实现方式及优化详解
2018/01/09 Python
浅析Python函数式编程
2018/10/06 Python
在Python中将函数作为另一个函数的参数传入并调用的方法
2019/01/22 Python
用python按照图像灰度值统计并筛选图片的操作(PIL,shutil,os)
2020/06/04 Python
python中如何打包用户自定义模块
2020/09/23 Python
Python并发爬虫常用实现方法解析
2020/11/19 Python
Flask-SocketIO服务端安装及使用代码示例
2020/11/26 Python
在 Python 中使用 7zip 备份文件的操作
2020/12/11 Python
澳大利亚手表品牌:Time IV Change
2018/10/06 全球购物
Ajax和javascript的区别
2013/07/20 面试题
酒店实习个人鉴定
2013/12/07 职场文书
竞选卫生委员演讲稿
2014/04/28 职场文书
2014年保管员工作总结
2014/11/18 职场文书
酒店工程部经理岗位职责
2015/04/09 职场文书
承兑汇票延期证明
2015/06/23 职场文书