中文字幕在线观看,亚洲а∨天堂久久精品9966,亚洲成a人片在线观看你懂的,亚洲av成人片无码网站,亚洲国产精品无码久久久五月天

查找頁(yè)面中所有鏈接的PHP代碼

2018-07-20    來源:open-open

容器云強(qiáng)勢(shì)上線!快速搭建集群,上萬(wàn)Linux鏡像隨意使用

function get_links($link) {
    $html = file_get_contents($link);
    $html = str_replace("\n", "", $html);
    $html = preg_replace('/<a/i', "\n<a", $html);
    $html = preg_replace('/<\/a>/', "</a>\n", $html);
    preg_match_all('/<a\s*.*>.*?<\/a>/', $html, $matches);
    return($matches);
}

在這個(gè)例子中,我們想用file_get_contents來取得一個(gè)網(wǎng)頁(yè)的內(nèi)容。然后用str_replace("\n", "", $html)把所有的換行去掉。再用preg_replace('/<a/i', "\n<a", $html)和preg_replace('/<\/a>/', "</a>\n", $html)來把所有的<a href=".....">.....</a>模式另起一行。最后就用preg_match_all('/<a\s*.*>.*?<\/a>/', $html, $matches)匹配鏈接模式。/<a\s*.*>.*?<\/a>/就是匹配<a href=".....">.....</a>這種模式的正則表達(dá)式。那我們?yōu)槭裁匆?lt;a href=".....">.....</a>鏈接另起一行呢??因?yàn)樵?<a\s*.*>.*?<\/a>/模式中,.*是不能匹配換行的,所以就如<a>和</a>不在同一行就不能匹配了!!所以我們要這樣做!

標(biāo)簽:

版權(quán)申明:本站文章部分自網(wǎng)絡(luò),如有侵權(quán),請(qǐng)聯(lián)系:west999com@outlook.com
特別注意:本站所有轉(zhuǎn)載文章言論不代表本站觀點(diǎn)!
本站所提供的圖片等素材,版權(quán)歸原作者所有,如需使用,請(qǐng)與原作者聯(lián)系。

上一篇:PHP頁(yè)面跳轉(zhuǎn)的三種方式

下一篇:python實(shí)現(xiàn)堆排序算法代碼