php可以刪除html標籤內容,其具體方法為:1、使用php自帶的函數strip_tags刪除全部或保留指定html標籤;2、透過strip_html_tags()函數刪除指定的html標籤和標籤內容等等。
本文操作環境:windows7系統、PHP7.1版、Dell G3電腦。
php可以刪除html標籤內容嗎?
php刪除html標籤和標籤內的內容的方法
#經常扒別人網站文章的坑們;我是指那種批量採集的壓根不看內容的,少不了都會用到刪除html標籤的函數;這裡介紹3種不同用途上的方法;
$str='<div><p>这里是p标签</p><img src="" alt="这里是img标签"><a href="">这里是a标签</a><br></div>';
1:刪除全部或保留指定html標籤
php自帶的函數strip_tags即可符合要求,
使用方法:strip_tags(string,allow);
str string:需要處理的字串;
allow:需要保留的指定標籤,可以寫多個;
<?php echo strip_tags($str,'<p><a>'); ?> //输出:<p>这里是p标签</p><a href="">这里是a标签</a>
次函數的優點是簡單粗暴,但是缺點也很明顯;如果有一大堆標籤;而我只想刪除指定的某一個;那要寫很多需要保留的標籤; 所以有了第二個方法;
2:刪除指定的html標籤
# 使用方法:strip_html_tags($tags,$str);
$tags:需要刪除的標籤(陣列格式)
:刪除標籤和標籤的內容
使用方法:strip_html_tags($tags,$str);
$tags:需要刪除的標籤( 數組格式)
:需要處理的字符串;<?php function strip_html_tags($tags,$str){ $html=array(); foreach ($tags as $tag) { $html[]="/(<(?:\/".$tag."|".$tag.")[^>]*>)/i"; } $data=preg_replace($html, '', $str); } echo strip_html_tags(array('p','img'),$str); ?> //输出<div>这里是p标签<a href="">这里是a标签</a><br></div>;很多網站文章裡面會帶上網站名和鏈接,比如6e38f7b81050e0aed24e6556418f8e2c白俊遙博客16ef26f8b7ea0fc89bdf90e275a93e5d;這個函數就是專治這種;別拿這個函數來採集本站啊;不然保證不打死你;4:終極函數,刪除指定標籤;刪除或保留標籤內的內容; 使用方法:strip_html_tags($tags,$str,$content); $tags:需要刪除的標籤( 但是的字串; $ontent:是否刪除標籤內的內容0保留內容1不保留內容
<?php function strip_html_tags($tags,$str){ $html=array(); foreach ($tags as $tag) { $html[]='/(<'.$tag.'.*?>[\s|\S]*?<\/'.$tag.'>)/'; } $data=preg_replace($html,'',$str); } echo strip_html_tags(array('a','img'),$str); ?> //输出<div><p>这里是p标签</p><img src="" alt="这里是img标签"><br></div>;#
以上是php可以刪除html標籤內容嗎的詳細內容。更多資訊請關注PHP中文網其他相關文章!