最新国产好看的视频,伊人天堂AV在线,国产Aaaaaa视频,蜜臀视频在线观看一区,人妻av色图,密臀久久久精品影片,青青视频免费观看毛片,久草在线观看视,国产三级精品色情在线

利用PHP實現(xiàn)短域名互轉(zhuǎn)

 更新時間:2013年07月05日 09:35:50   作者:  
如何使用PHP實現(xiàn)短域名互轉(zhuǎn)?下面的代碼可以幫助你實現(xiàn),非常簡單,需要的朋友可以參考下
復(fù)制代碼 代碼如下:

/**
  * 短域名生成&解析類
  */
 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',
     'http://www.fzitv.net'
 );
 foreach ($url as $v) {
     $sort    = $app->encode($v);
     echo "sort link: ".$sort."\n";
     $original    = $app->decode($sort);
     echo "original: ".$original."\n";
 }
 ?>

相關(guān)文章

  • 詳解php命令注入攻擊

    詳解php命令注入攻擊

    這篇文章主要介紹了php命令注入攻擊,文中通過示例代碼介紹的非常詳細,對大家的學(xué)習(xí)或者工作具有一定的參考學(xué)習(xí)價值,需要的朋友們下面隨著小編來一起學(xué)習(xí)學(xué)習(xí)吧
    2019-04-04
  • linux下刪除7天前日志的代碼(php+shell)

    linux下刪除7天前日志的代碼(php+shell)

    shell 版本比較麻煩 關(guān)鍵我linux轉(zhuǎn)換不熟悉
    2011-01-01
  • php中RESTful API的使用方法詳解

    php中RESTful API的使用方法詳解

    RESTful API是一種軟件架構(gòu)風(fēng)格,它將資源(Resource)作為核心概念,并通過一組統(tǒng)一的接口對資源進行操作,下面我們就來學(xué)習(xí)一下RESTful API在PHP中的具體使用吧
    2023-11-11
  • PHP與JavaScript針對Cookie的讀寫、交互操作方法詳解

    PHP與JavaScript針對Cookie的讀寫、交互操作方法詳解

    這篇文章主要介紹了PHP與JavaScript針對Cookie的讀寫、交互操作方法,結(jié)合實例形式分析了php與javascript設(shè)置cookie、php讀取php及js設(shè)置的cookie、js讀取php及js設(shè)置的cookie等相關(guān)操作技巧,需要的朋友可以參考下
    2017-08-08
  • 用PHP去掉文件頭的Unicode簽名(BOM)方法

    用PHP去掉文件頭的Unicode簽名(BOM)方法

    下面小編就為大家?guī)硪黄肞HP去掉文件頭的Unicode簽名(BOM)方法。小編覺得挺不錯的,現(xiàn)在就分享給大家,也給大家做個參考。一起跟隨小編過來看看吧
    2017-06-06
  • 解析關(guān)于java,php以及html的所有文件編碼與亂碼的處理方法匯總

    解析關(guān)于java,php以及html的所有文件編碼與亂碼的處理方法匯總

    本篇文章是對關(guān)于java,php以及html的所有文件編碼與亂碼的處理方法進行了詳細的總結(jié)與介紹,需要的朋友參考下
    2013-06-06
  • php,ajax實現(xiàn)分頁

    php,ajax實現(xiàn)分頁

    之前用php寫好了個分頁程序,今天試著結(jié)合ajax實現(xiàn)這個功能,成功了。哈哈,代碼不難寫,但寫好之后測試發(fā)現(xiàn)出了,然后又調(diào)試了好段時間才正確。深感開發(fā)人員的時間大部分都是花在調(diào)試代碼上的。
    2008-03-03
  • Discuz Uchome ajaxpost小技巧

    Discuz Uchome ajaxpost小技巧

    discuz的ajaxpost功能有點強大,但缺點也很明顯,如果ajaxpost提交一個FORM,那么返回的時候只能顯示showmessage的內(nèi)容,而不會主動跳轉(zhuǎn),因此這里就有一個小技巧 了。
    2011-01-01
  • PHP設(shè)計模式之模板方法模式Template Method Pattern詳解

    PHP設(shè)計模式之模板方法模式Template Method Pattern詳解

    在我們實際開發(fā)中,如果一個方法極其復(fù)雜時,如果我們將所有的邏輯寫在一個方法中,那維護起來就很困難,要替換某些步驟時都要重新寫,這樣代碼的擴展性就很差,當遇到這種情況就要考慮今天的主角——模板方法模式
    2022-12-12
  • PHP+Ajax實現(xiàn)的博客文章添加類別功能示例

    PHP+Ajax實現(xiàn)的博客文章添加類別功能示例

    這篇文章主要介紹了PHP+Ajax實現(xiàn)的博客文章添加類別功能,結(jié)合實例形式分析了php+ajax實現(xiàn)的數(shù)據(jù)交互、數(shù)據(jù)庫連接、查詢等相關(guān)操作技巧,需要的朋友可以參考下
    2018-03-03

最新評論

莱西市| 香河县| 达尔| 杭锦旗| 桂林市| 镇江市| 屏南县| 林口县| 陆良县| 泌阳县| 青海省| 壤塘县| 郑州市| 珠海市| 房产| 微山县| 新余市| 昌邑市| 章丘市| 松滋市| 灵山县| 呈贡县| 南溪县| 日土县| 克什克腾旗| 雷波县| 德钦县| 昭平县| 阿瓦提县| 邻水| 任丘市| 定西市| 北海市| 勐海县| 萍乡市| 余干县| 河东区| 武乡县| 堆龙德庆县| 济阳县| 墨竹工卡县|