中文字幕免费精品_亚洲视频自拍_亚洲综合国产激情另类一区_色综合咪咪久久

php讀取torrent種子文件內(nèi)容的方法(測(cè)試可用)
來(lái)源:易賢網(wǎng) 閱讀:1841 次 日期:2016-08-25 14:59:12
溫馨提示:易賢網(wǎng)小編為您整理了“php讀取torrent種子文件內(nèi)容的方法(測(cè)試可用)”,方便廣大網(wǎng)友查閱!

這篇文章主要介紹了php讀取torrent種子文件內(nèi)容的方法,可實(shí)現(xiàn)讀取并顯示torrent種子文件內(nèi)容的功能,簡(jiǎn)單實(shí)用,需要的朋友可以參考下

<?php

/**

 * Class xBEncoder

 * Author: Angus.Fenying

 * Version: 0.1

 * Date:  2014-06-03

 *

 *  This class helps stringify or parse BENC

 *  codes.

 *

 * All Copyrights 2007 - 2014 Fenying Studio Reserved.

 */

class xBEncoder

{

  const READY = 0;

  const READ_STR = 1;

  const READ_DICT = 2;

  const READ_LIST = 3;

  const READ_INT = 4;

  const READ_KEY = 5;

  public $y;

  protected $z, $m, $n;

  protected $stat;

  protected $stack;

  /**

   * This method saves the status of current

   * encode/decode work.

   */

  protected function push($newY, $newStat)

  {

    array_push($this->stack, array($this->y, $this->z, $this->m, $this->n, $this->stat));

    list($this->y, $this->z, $this->m, $this->n, $this->stat) = array($newY, 0, 0, 0, $newStat);

  }

  /**

   * This method restore the saved status of current

   * encode/decode work.

   */

  protected function pop()

  {

    $t = array_pop($this->stack);

    if ($t) {

      if ($t[4] == self::READ_DICT) {

        $t[0]->{$t[1]} = $this->y;

        $t[1] = 0;

      } elseif ($t[4] == self::READ_LIST)

        $t[0][] = $this->y;

      list($this->y, $this->z, $this->m, $this->n, $this->stat) = $t;

    }

  }

  /**

   * This method initializes the status of work.

   * YOU SHOULD CALL THIS METHOD BEFORE EVERYTHING.

   */

  public function init()

  {

    $this->stat = self::READY;

    $this->stack = array();

    $this->z = $this->m = $this->n = 0;

  }

  /**

   * This method decode $s($l as length).

   * You can get $obj->y as the result.

   */

  public function decode($s, $l)

  {

    $this->y = 0;

    for ($i = 0; $i < $l; ++$i) {

      switch ($this->stat) {

        case self::READY:

          if ($s[$i] == 'd') {

            $this->y = new xBDict();

            $this->stat = self::READ_DICT;

          } elseif ($s[$i] == 'l') {

            $this->y = array();

            $this->stat = self::READ_LIST;

          }

          break;

        case self::READ_INT:

          if ($s[$i] == 'e') {

            $this->y->val = substr($s, $this->m, $i - $this->m);

            $this->pop();

          }

          break;

        case self::READ_STR:

          if (xBInt::isNum($s[$i]))

            continue;

          if ($s[$i] = ':') {

            $this->z = substr($s, $this->m, $i - $this->m);

            $this->y = substr($s, $i + 1, $this->z + 0);

            $i += $this->z;

            $this->pop();

          }

          break;

        case self::READ_KEY:

          if (xBInt::isNum($s[$i]))

            continue;

          if ($s[$i] = ':') {

            $this->n = substr($s, $this->m, $i - $this->m);

            $this->z = substr($s, $i + 1, $this->n + 0);

            $i += $this->n;

            $this->stat = self::READ_DICT;

          }

          break;

        case self::READ_DICT:

          if ($s[$i] == 'e') {

            $this->pop();

            break;

          } elseif (!$this->z) {

            $this->m = $i;

            $this->stat = self::READ_KEY;

            break;

          }

        case self::READ_LIST:

          switch ($s[$i]) {

            case 'e':

              $this->pop();

              break;

            case 'd':

              $this->push(new xBDict(), self::READ_DICT);

              break;

            case 'i':

              $this->push(new xBInt(), self::READ_INT);

              $this->m = $i + 1;

              break;

            case 'l':

              $this->push(array(), self::READ_LIST);

              break;

            default:

              if (xBInt::isNum($s[$i])) {

                $this->push('', self::READ_STR);

                $this->m = $i;

              }

          }

          break;

      }

    }

    $rtn = empty($this->stack);

    $this->init();

    return $rtn;

  }

  /**

   * This method encode $obj->y into BEncode.

   */

  public function encode()

  {

    return $this->_encDo($this->y);

  }

  protected function _encStr($str)

  {

    return strlen($str) . ':' . $str;

  }

  protected function _encDo($o)

  {

    if (is_string($o))

      return $this->_encStr($o);

    if ($o instanceof xBInt)

      return 'i' . $o->val . 'e';

    if ($o instanceof xBDict) {

      $r = 'd';

      foreach ($o as $k => $c)

        $r .= $this->_encStr($k) . $this->_encDo($c);

      return $r . 'e';

    }

    if (is_array($o)) {

      $r = 'l';

      foreach ($o as $c)

        $r .= $this->_encDo($c);

      return $r . 'e';

    }

  }

}

class xBDict

{

}

class xBInt

{

  public $val;

  public function __construct($val = 0)

  {

    $this->val = $val;

  }

  public static function isNum($chr)

  {

    $chr = ord($chr);

    if ($chr <= 57 && $chr >= 48)

      return true;

    return false;

  }

}

//使用實(shí)例

$s = file_get_contents("test.torrent");

$bc = new xBEncoder();

$bc->init();

$bc->decode($s, strlen($s));

var_dump($bc->y);

希望本文所述對(duì)大家PHP程序設(shè)計(jì)有所幫助。

更多信息請(qǐng)查看網(wǎng)絡(luò)編程
易賢網(wǎng)手機(jī)網(wǎng)站地址:php讀取torrent種子文件內(nèi)容的方法(測(cè)試可用)
由于各方面情況的不斷調(diào)整與變化,易賢網(wǎng)提供的所有考試信息和咨詢(xún)回復(fù)僅供參考,敬請(qǐng)考生以權(quán)威部門(mén)公布的正式信息和咨詢(xún)?yōu)闇?zhǔn)!

2026上岸·考公考編培訓(xùn)報(bào)班

  • 報(bào)班類(lèi)型
  • 姓名
  • 手機(jī)號(hào)
  • 驗(yàn)證碼
關(guān)于我們 | 聯(lián)系我們 | 人才招聘 | 網(wǎng)站聲明 | 網(wǎng)站幫助 | 非正式的簡(jiǎn)要咨詢(xún) | 簡(jiǎn)要咨詢(xún)須知 | 新媒體/短視頻平臺(tái) | 手機(jī)站點(diǎn) | 投訴建議
工業(yè)和信息化部備案號(hào):滇ICP備2023014141號(hào)-1 云南省教育廳備案號(hào):云教ICP備0901021 滇公網(wǎng)安備53010202001879號(hào) 人力資源服務(wù)許可證:(云)人服證字(2023)第0102001523號(hào)
云南網(wǎng)警備案專(zhuān)用圖標(biāo)
聯(lián)系電話(huà):0871-65099533/13759567129 獲取招聘考試信息及咨詢(xún)關(guān)注公眾號(hào):hfpxwx
咨詢(xún)QQ:1093837350(9:00—18:00)版權(quán)所有:易賢網(wǎng)
云南網(wǎng)警報(bào)警專(zhuān)用圖標(biāo)
中文字幕免费精品_亚洲视频自拍_亚洲综合国产激情另类一区_色综合咪咪久久
久久久久久尹人网香蕉| 国产精品高潮呻吟久久av黑人| 久久久久国产精品厨房| 国产在线精品二区| 免费一级欧美在线大片| 亚洲第一区色| 久久美女艺术照精彩视频福利播放| 国产精品卡一卡二卡三| 欧美在线播放高清精品| 国产一区二区三区四区老人| 久久久精品2019中文字幕神马| 在线观看福利一区| 欧美激情在线狂野欧美精品| 亚洲视屏一区| 国产精品一区二区久激情瑜伽| 欧美在线国产精品| 亚洲图片你懂的| 亚洲视频一区| 午夜亚洲精品| 久久久久久高潮国产精品视| 久久综合五月天婷婷伊人| 久久香蕉国产线看观看av| 亚洲高清视频的网址| 精品成人国产| 欧美午夜欧美| 欧美日韩亚洲激情| 欧美区在线观看| 欧美激情综合色| 欧美韩日一区二区三区| 免费的成人av| 欧美大尺度在线| 久久综合网络一区二区| 免费成人小视频| 欧美成人免费大片| 国产精品ⅴa在线观看h| 欧美午夜不卡在线观看免费 | 国产精品久久久久久模特 | 国内精品一区二区三区| 国产欧美日韩综合一区在线观看| 国产乱码精品一区二区三区五月婷| 欧美精品v日韩精品v国产精品| 久久免费视频网| 久久久女女女女999久久| 欧美成人日韩| 国产日韩综合| 一区二区三区 在线观看视| 久久免费国产| 国产精品一区二区视频| 亚洲精品视频免费在线观看| 久久狠狠婷婷| 国产欧美成人| 亚洲欧美在线aaa| 欧美日韩一区国产| 亚洲精品女人| 免费欧美日韩| 亚洲高清不卡| 欧美国产一区二区在线观看 | 女同性一区二区三区人了人一| 国产精品视频最多的网站| 亚洲一区二区三区在线播放| 欧美日韩国产首页在线观看| 曰本成人黄色| 欧美精品亚洲| 日韩午夜在线播放| 欧美激情一区二区三区在线视频观看 | 亚洲国产va精品久久久不卡综合| 欧美亚洲一级| 在线观看成人小视频| 欧美a级在线| 一区二区三区www| 国产精品视屏| 久久综合一区| 一二三区精品| 在线观看国产欧美| 欧美色视频日本高清在线观看| 亚洲欧美日韩成人| 亚洲大胆在线| 国产欧美短视频| 欧美岛国激情| 久久成人国产精品| 日韩一区二区久久| 国内精品亚洲| 国产精品欧美一区二区三区奶水 | 欧美四级伦理在线| 亚洲免费av片| 国产欧美日韩视频| 欧美在线不卡视频| 亚洲最新视频在线播放| 国产三级欧美三级| 欧美国产日韩亚洲一区| 一区二区三区蜜桃网| 国产日韩欧美夫妻视频在线观看| 久久精品国产精品亚洲精品| 亚洲激情偷拍| 国产精自产拍久久久久久| 国产一区二区精品丝袜| 男同欧美伦乱| 久久久国产午夜精品| 亚洲尤物精选| 亚洲国产另类 国产精品国产免费| 国产精品国产福利国产秒拍| 久久久99国产精品免费| 欧美一区二区在线免费播放| 99日韩精品| 亚洲国产成人av| 国产三级欧美三级日产三级99| 欧美日韩国产成人在线免费| 久久精品视频在线播放| 亚洲一级特黄| 中文久久乱码一区二区| 99视频精品在线| 亚洲欧美国产三级| 欧美伊人久久久久久久久影院| 一本色道久久综合亚洲91| 日韩视频精品在线| 99re热这里只有精品免费视频| 亚洲电影视频在线| 99re6热在线精品视频播放速度| 亚洲经典自拍| 日韩系列欧美系列| 国产精品99久久久久久久女警 | 国语自产精品视频在线看| 欧美午夜视频一区二区| 欧美天天影院| 国产区二精品视| 国产日本欧洲亚洲| 国产精品美女久久| 国产一区二区按摩在线观看| 在线成人中文字幕| 一区二区三区**美女毛片| 国产精品国产三级国产aⅴ浪潮| 欧美三级视频在线播放| 国产精品系列在线播放| 韩国在线视频一区| 亚洲人午夜精品免费| 蜜桃久久av| 亚洲国产成人午夜在线一区 | 国产精品人人爽人人做我的可爱| 国产精品av一区二区| 国产一区二区三区电影在线观看| 91久久夜色精品国产九色| 欧美在线在线| aaa亚洲精品一二三区| 麻豆成人在线观看| 久久精品国产96久久久香蕉| 欧美系列一区| 亚洲欧美偷拍卡通变态| 欧美三级午夜理伦三级中视频| 国产欧美一区二区精品忘忧草| 一区二区三区日韩| 欧美日韩一区二区免费在线观看| 亚洲精品久久久一区二区三区| 国产精品美女午夜av| 欧美在线免费| 黄色成人在线| 欧美在线啊v一区| 国产日产欧美a一级在线| 午夜在线不卡| 一区免费在线| 美女国内精品自产拍在线播放| 久久精品30| 亚洲国产一区二区在线| 欧美精品三级| 欧美一二区视频| 国产精品区一区| 蜜臀av在线播放一区二区三区| 国产一区二区三区在线观看网站 | 激情久久久久久久| 欧美成年人在线观看| 午夜国产不卡在线观看视频| 国产一区 二区 三区一级| 免费欧美电影| 午夜伦欧美伦电影理论片| 在线免费观看视频一区| 红桃视频亚洲| 国产精品美女久久久久久2018| 欧美影院午夜播放| 一色屋精品视频在线看| 欧美日韩综合精品| 麻豆国产精品777777在线 | 欧美午夜精品一区| 欧美一级播放| 日韩视频一区二区三区在线播放| 国产婷婷一区二区| 欧美性事在线| 欧美日韩在线精品| 欧美国产日韩一二三区| 美女日韩欧美| 理论片一区二区在线| 久久福利视频导航| 久久久久www| 久久久久久尹人网香蕉| 久久久午夜电影| 久久福利毛片| 久久国产毛片| 欧美成人小视频| 欧美精品在线观看播放| 国产精品久久久久久久久久尿 | 久久九九热re6这里有精品| 亚洲一线二线三线久久久|