利用PHP实现短域名互转
(编辑:jimmy 日期: 2025/9/23 浏览:2)
复制代码 代码如下:
/**
* 短域名生成&解析类
*/
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 ));
}
return $out;
}
}
$app = new Build_URL();
$url = array(
'http://www.baidu.com',
'http://www.google.com',
'https://www.jb51.net'
);
foreach ($url as $v) {
$sort = $app->encode($v);
echo "sort link: ".$sort."\n";
$original = $app->decode($sort);
echo "original: ".$original."\n";
}
?>
荣耀猎人回归!七大亮点看懂不只是轻薄本,更是游戏本的MagicBook Pro 16.
人们对于笔记本电脑有一个固有印象:要么轻薄但性能一般,要么性能强劲但笨重臃肿。然而,今年荣耀新推出的MagicBook Pro 16刷新了人们的认知——发布会上,荣耀宣布猎人游戏本正式回归,称其继承了荣耀 HUNTER 基因,并自信地为其打出“轻薄本,更是游戏本”的口号。
众所周知,寻求轻薄本的用户普遍更看重便携性、外观造型、静谧性和打字办公等用机体验,而寻求游戏本的用户则普遍更看重硬件配置、性能释放等硬核指标。把两个看似难以相干的产品融合到一起,我们不禁对它产生了强烈的好奇:作为代表荣耀猎人游戏本的跨界新物种,它究竟做了哪些平衡以兼顾不同人群的各类需求呢?