加入收藏 | 设为首页 | 会员中心 | 我要投稿 安卓应用网 (https://www.0791zz.com/)- 科技、建站、经验、云计算、5G、大数据,站长网!
当前位置: 首页 > 编程开发 > PHP > 正文

网址缩短与还原base62

发布时间:2020-05-25 07:52:14 所属栏目:PHP 来源:互联网
导读:网址缩短与还原base62

下面是脚本之家 jb51.cc 通过网络收集整理的代码片段。

脚本之家小编现在分享给大家,也给大家做个参考。

网址缩短与还原,思路是采用htaccess转发网址到指定controller,采用mysql数据库存储数据,示例:http://2vm.win/

缩短效果:http://2vm.win/s/shorturlhttp://2vm.win/d/d

二维码:http://2vm.win/s/shorturl/qrhttp://2vm.win/d/d/qr
function enbase62($number,$encode = ''){
    $base62 = '0123456789abcdefghijklmnopqrstuvwxyzABCDEFGHIJKLMNOPQRSTUVWXYZ';
    while($number > 0){
        $mod = bcmod($number,62);
        $encode .= $base62[$mod];
        $number = bcdiv(bcsub($number,$mod),62);
    }
    return strrev($encode);
}

function debase62($encode,$number = 0){
    $base62 = '0123456789abcdefghijklmnopqrstuvwxyzABCDEFGHIJKLMNOPQRSTUVWXYZ';
    $length = strlen($encode);
    $baselist = array_flip(str_split($base62));
    for($i = 0; $i < $length; $i++){
        $number = bcadd($number,bcmul($baselist[$encode[$i]],bcpow(62,$length - $i - 1)));
    }
    return $number;
}
CREATE TABLE `waoo_shorturl` (
  `short_id` int(12) NOT NULL AUTO_INCREMENT COMMENT '自增id',`short_name` varchar(50) DEFAULT NULL COMMENT '别名',`title` varchar(100) DEFAULT NULL COMMENT '标题',`link` varchar(800) DEFAULT NULL COMMENT '网址链接',`create_time` datetime DEFAULT NULL COMMENT '创建时间',`uid` int(10) DEFAULT NULL COMMENT '拥有者',`status` tinyint(1) DEFAULT '1' COMMENT '1有效,0封禁 -1删除',`top_domain` varchar(100) DEFAULT NULL COMMENT '顶级域名',`all_domain` varchar(100) NOT NULL COMMENT '域名全文',`create_ip` varchar(15) NOT NULL COMMENT 'ip',PRIMARY KEY (`short_id`),UNIQUE KEY `short_name` (`short_name`)
) ENGINE=MyISAM AUTO_INCREMENT=12 DEFAULT CHARSET=utf8
<IfModule mod_rewrite.c>
  Options +FollowSymlinks
  RewriteEngine On

  RewriteRule /d/(?!index)(.*) /d/index/?short_id=$1 [L,NC]
  RewriteRule /s/(?!index)(.*) /s/index/?short_name=$1 [L,NC]
  
  RewriteCond %{REQUEST_FILENAME} !-d
  RewriteCond %{REQUEST_FILENAME} !-f
  RewriteRule ^(.*)$ index.php/$1 [QSA,PT,L]
</IfModule>

以上是脚本之家(jb51.cc)为你收集整理的全部代码内容,希望文章能够帮你解决所遇到的程序开发问题。

如果觉得脚本之家网站内容还不错,欢迎将脚本之家网站推荐给程序员好友。

(编辑:安卓应用网)

【声明】本站内容均来自网络,其相关言论仅代表作者个人观点,不代表本站立场。若无意侵犯到您的权利,请及时与联系站长删除相关内容!

    推荐文章
      热点阅读