利用PHP实现短域名互转 android软件开发教程

  次阅读 来源:互联网(转载协议) 2016-03-02 15:18 我要评论(0)

如何使用PHP实现短域名互转?下面的代码可以帮助你实现,非常简单,需要的朋友可以参考下

复制代码 代码如下:

/**

* 短域名生成&解析类*/

class Build_URL {

private $mem;

private $base_url = 'http://xxx.com/';

public function__construct() {

$mem_conf= array(

array(

'host'=> '192.168.10.90',

'port'=> '11116'

),

array(

'host'=> '192.168.10.90',

'port'=> '11117'

),

);

$this->mem= new Memcache();

foreach ($mem_conf as $v) {

$this->mem->addServer($v['host'], $v['port']);

}

}

public function encode($url) {

$url= trim($url);

if(!preg_match("#^[http://|https://|ftp://]#iS", $url)) {

return false;

}

$md5= md5($url);

$aid= $this->mem->get($md5);

if(!$aid) {

if(($aid = $this->mem->increment('auto_increment_id')) === false) {

$this->mem->set('auto_increment_id', 10000);

$aid = $this->mem->increment('auto_increment_id');

}

$this->mem->set($md5, $aid);

$key= $this->dec2any($aid);

$this->mem->set($key, $url);

} else {

$key= $this->dec2any($aid);

}

return $this->base_url.$key;

}

public function decode($url) {

$key= str_replace($this->base_url, '', trim($url));

return $this->mem->get($key);

}

private function dec2any($num, $base=62, $index=false) {

$out = '';

if (! $base ) {

$base = strlen($index);

} else if (! $index ) {

$index = substr("0123456789abcdefghijklmnopqrstuvwxyzABCDEFGHIJKLMNOPQRSTUVWXYZ" ,0 ,$base);

}

$t = ($num == 0) ? 0 : floor(log10($num) / log10($base));

for ($t; $t >= 0; $t--) {

$a = floor($num / pow( $base, $t ));

$out = $out . substr($index, $a, 1);

$num = $num - ($a * pow( $base, $t ));

}

本站部分文章来源于网络以及网友投稿,本站只负责对文章进行整理、排版、编辑,是出于传递更多信息之目的,并不意味着赞同其观点或证实其内容的真实性。如果您有什么意见或建议,请联系QQ28-1688-302!

人工智能实验室
相关文章相关文章
  • 让AI触手可及  Qualcomm携手创通联达推出全新终端侧AI开发套件

    让AI触手可及 Qualcomm携手创通联达推出全新终端侧AI开发套件

  • 品友互动为Digital Travel APAC2018 唯一受邀中国AI企业

    品友互动为Digital Travel APAC2018 唯一受邀中国AI企业

  • 第一批国家重点研发计划公布,旷视科技开启“五年行动”

    第一批国家重点研发计划公布,旷视科技开启“五年行动”

  • 长虹新款智能语音空调,告诉你空调也能玩Siri

    长虹新款智能语音空调,告诉你空调也能玩Siri

网友点评网友点评
阅读推荐阅读推荐

据外媒报道,STEER打造了首款完全自动驾驶停车技术,旨在使常规车辆转变为无人驾驶车辆。STEER的首款技术应用是4级自动驾驶及网络安全停车...

近日,美国软性机器抓手制造商 Soft Robotics 宣布,获得 2000 万美元的融资,本轮投资者包括 Scale Venture Partners,Calibrate Ventures...

据外媒报道,加州车管局发布了《2017自动驾驶脱离报告(California Autonomous Vehicle Disengagement Reports)》,其中谈及了脱离的具体...

用人机语音交互,来解决智能家居适老的问题;通过家庭门禁与安防套件、空气净化套件、可燃气体与有害气体监控套件等相互联动,在不同生活情...