久久r热视频,国产午夜精品一区二区三区视频,亚洲精品自拍偷拍,欧美日韩精品二区

您的位置:首頁技術(shù)文章
文章詳情頁

php基于DOMDocument操作頁面元素實例 原創(chuàng)

瀏覽:36日期:2022-06-14 08:05:01
問題

有如下代碼,要求不使用正則表達(dá)式的情況下修改鏈接為 https://www.jb51.net/softs/

<p>歡迎訪問<span>好吧啦網(wǎng)</span> <a Content-Type: text/html; charset=utf-8');// 原始HTML代碼$cont = '<p>歡迎訪問<span>好吧啦網(wǎng)</span><a ;// 創(chuàng)建DOMDocument對象$dom = new DOMDocument();//$dom->encoding = 'UTF-8';//@$dom->loadHTML($cont,LIBXML_HTML_NOIMPLIED | LIBXML_HTML_NODEFDTD);@$dom->loadHTML(mb_convert_encoding($cont, 'HTML-ENTITIES','UTF-8'),LIBXML_HTML_NOIMPLIED | LIBXML_HTML_NODEFDTD);$aElem = $dom->getElementsByTagName('a');$aElem[0]->setAttribute('href','https://www.jb51.net/softs/');// 給a鏈接添加rel='nofollow'屬性$aElem[0]->setAttribute('rel','nofollow');$content = $dom->saveHTML();//$content = mb_convert_encoding($content, 'UTF-8', 'ISO-8859-1');// 輸出修改后的HTML代碼echo $content;?>

運(yùn)行上述代碼,則頁面源碼即被修改為:

<p>歡迎訪問<span>好吧啦網(wǎng)</span><a rel='nofollow'>軟件下載</a></p>

這里要注意:loadHTML載入html文本的時候,需要指定編碼,筆者這里使用的是mb_convert_encoding($cont, 'HTML-ENTITIES','UTF-8') 進(jìn)行編碼轉(zhuǎn)換,另外筆者所測試網(wǎng)上搜索到的$dom->encoding = 'UTF-8'; 以及 $content = mb_convert_encoding($content, 'UTF-8', 'ISO-8859-1');???均未起到作用。

補(bǔ)充

此外,修改元素innerHtml屬性也很簡單,只需要設(shè)置其nodeValue值即可,上述示例繼續(xù)擴(kuò)展如下:

<?phpheader('Content-Type: text/html; charset=utf-8');//echo $codeid = date('YmdHis').mt_rand(1000,9999);// 原始HTML代碼$cont = '<p>歡迎訪問<span>好吧啦網(wǎng)</span><a ;// 創(chuàng)建DOMDocument對象$dom = new DOMDocument();//$dom->encoding = 'UTF-8';//@$dom->loadHTML($cont,LIBXML_HTML_NOIMPLIED | LIBXML_HTML_NODEFDTD);@$dom->loadHTML(mb_convert_encoding($cont, 'HTML-ENTITIES','UTF-8'),LIBXML_HTML_NOIMPLIED | LIBXML_HTML_NODEFDTD);$aElem = $dom->getElementsByTagName('a');$aElem[0]->setAttribute('href','https://www.jb51.net/softs/');// 給a鏈接添加rel='nofollow'屬性$aElem[0]->setAttribute('rel','nofollow');//修改span元素的innerHtml值$spanElem = $dom->getElementsByTagName('span');$spanElem[0]->nodeValue = '【好吧啦網(wǎng)軟件下載】===>';$content = $dom->saveHTML();//$content = mb_convert_encoding($content, 'UTF-8', 'ISO-8859-1');// 輸出修改后的HTML代碼echo $content;?>

此時再次訪問,頁面元素就變成了:

<p>歡迎訪問<span>【好吧啦網(wǎng)軟件下載】===&gt;</span><a rel='nofollow'>軟件下載</a></p>
標(biāo)簽: PHP
相關(guān)文章:
主站蜘蛛池模板: 云林县| 霍林郭勒市| 霍邱县| 许昌市| 双城市| 厦门市| 泾源县| 木兰县| 房产| 克山县| 望都县| 漾濞| 类乌齐县| 巩留县| 湄潭县| 延津县| 广灵县| 台湾省| 上蔡县| 微博| 林周县| 诏安县| 延川县| 黑龙江省| 田东县| 石家庄市| 中牟县| 甘泉县| 卓尼县| 南开区| 泗洪县| 郯城县| 呈贡县| 青河县| 灵山县| 龙门县| 萍乡市| 阿拉尔市| 麻城市| 大埔县| 黎城县|