$v ){ $arr = array(); // 种子基本信息处理 // 偏移量 $offset = strpos($v,self::downloadPrefix); // 截取 $urlTemp = substr($v,$offset,$len); // 种子地址 $arr['url'] = substr($urlTemp,0,strpos($urlTemp,$downloadStrEnd)); // 种子id $arr['id'] = substr($arr['url'],$downloadStrLen); // 获取主标题 // 偏移量 $h1_offset = strpos($v, ''; $h2_endoffset = strpos($v,$h2StrEnd); $temp = substr($v, 0, $h2_endoffset); $h2_offset = strrpos($temp,$h2StrStart); //p($temp); if ($h2_offset === false ) { $arr['title'] = ''; } else { //存在副标题 $h2_len = strlen($temp) - $h2_offset - strlen($h2StrStart); $titleTemp = substr($temp, $h2_offset + strlen($h2StrStart), $h2_len); if ( strpos($titleTemp, $h2StrStart)!=false ) { //过滤已下载、进行中等进度框 $titleTemp = substr($titleTemp, 0, strpos($titleTemp, $h2StrStart)); } // 精确适配标签 begin $titleSpan = ''; $title = selector::remove($titleTemp, "//div"); $span = selector::select($titleTemp, '//a'); if(!empty($span)){ if(is_array($span)){ foreach ( $span as $vv ){ if( empty($vv) ){ continue; } $titleSpan.='['.$vv.'] '; } }else{ $titleSpan.='['.$span.'] '; } } // 精确适配标签 end $arr['title'] = $titleSpan . $title; //最后过滤 #$arr['title'] = strip_tags(str_replace('d class="embedded">',"",$arr['title'])); // 过滤 } // 组合返回数组 self::$TorrentList[$k]['id'] = $arr['id']; self::$TorrentList[$k]['h1'] = $arr['h1']; self::$TorrentList[$k]['title'] = isset( $arr['title'] ) && $arr['title'] ? $arr['title'] : ''; self::$TorrentList[$k]['details'] = self::HOST.self::detailsPrefix.$arr['id']; self::$TorrentList[$k]['download'] = self::HOST.$arr['url']; self::$TorrentList[$k]['filename'] = $arr['id'].'.torrent'; // 种子促销类型解码 if(strpos($v,self::$getTorrent[0]) === false){ // 不免费 self::$TorrentList[$k]['type'] = 1; }else{ // 免费种子 self::$TorrentList[$k]['type'] = 0; } // 存活时间 // 大小 // 种子数 // 下载数 // 完成数 // 完成进度 } #p(self::$TorrentList); return self::$TorrentList; } }