詳細は次のとおりです:
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 39 40 41 42 43 44 45 46 47 |
// $html = ページ上の HTML // $current_url = HTML の取得元の完全な URL //($repath にのみ必要) // $repath = ../ および / および // URL を完全な有効な URL に変換します function pageLinks($html, $current_url = "", $repath = false){ preg_match_all("/ $links = array(); if(isset($matches[2])){ $links = $matches[2]; } if($repath && count($links) > 0 && strlen($current_url) > 0){ $pathi = パス情報($current_url); $dir = $pathi["dirname"]; $base = parse_url($current_url); $split_path =explode("/", $dir); $url = ""; foreach($links as $k => $link){ if(preg_match("/^../", $link)){ $total = substr_count($link, "../"); for($i = 0; $i
array_pop($split_path); } $url = implode("/", $split_path) . "/" . str_replace("../", "", $link); }elseif(preg_match("/^///", $link)){ $url = $base["スキーム"] ":" .
|