分享下php獲取網頁中圖片、DIV內容的簡單方法,都是通過正則表達式實現的。
1、獲取網頁中所有的圖片:
<?php //取得指定位址的內容,並儲存至 $text $text=file_get_contents('http://www.jbxue.com/'); //取得所有img標簽,並儲存至二維數組 $match 中 preg_match_all('/<img[^>]*>/i', $text, $match); //打印出match print_r($match); ?>
2、獲取網頁中的第一張圖片:
<?php //取得指定位址的內容,並儲存至 $text $text=file_get_contents('http://www.jbxue.com/'); //取得第一個 img 標簽,並儲存至二維數組 $match 中 preg_match('/<img[^>]*>/Ui', $text, $match); //打印出match print_r($match); ?>
3、獲取指定網頁中特定的 div 區塊數據:
<?php //取得指定位址的內容,並儲存至 $text $text=file_get_contents('http://www.jbxue.com/'); //去除換行及空白字符(序列化內容才需使用) //$text=str_replace(array("/r","/n","/t","/s"), '', $text); //取出 div 標簽且 id 為 PostContent 的內容,並儲存至二維數組 $match 中 preg_match('/<div[^>]*id="PostContent"[^>]*>(.*?) <//div>/si',$text,$match); //打印出match[0] print($match[0]); ?>
4. 上述2及3的結合:
<?php //取得指定位址的內容,並儲存至 $text $text=file_get_contents('http://www.jbxue.com/'); //取出 div 標簽且 id 為 PostContent 的內容,並儲存至二維數組 $match 中 preg_match('/<div[^>]*id="PostContent"[^>]*>(.*?) <//div>/si',$text,$match); //取得第一個 img 標簽,並儲存至二維數組 $match2 中 preg_match('/<img[^>]*>/Ui', $text, $match2); //打印出match2[0] print_r($match2[0]); ?>