Can php delete div?

藏色散人
Release: 2023-02-27 18:12:02
Original
2313 people have browsed it

Can php delete div?

Can php delete div?

php can delete div.

Summarize the method of deleting html tags and the content within the tags in PHP

People who often steal other people’s website articles;

I am Refers to the kind of batch collection that does not read the content at all;

Invariably, the function of deleting html tags is used;

Here are three methods for different purposes;

$str=&#39;<div><p>这里是p标签</p><img src="" alt="这里是img标签"><a href="">这里是a标签</a><br></div>&#39;;
Copy after login

1: Delete all or keep the specified html tags

The function strip_tags that comes with php can meet the requirements,

Usage method:

strip_tags(string,allow);

string: the string that needs to be processed;

allow: the specified tag that needs to be retained, you can write multiple;

echo strip_tags($str,&#39;<p><a>&#39;);
//输出:<p>这里是p标签</p><a href="">这里是a标签</a>
Copy after login

The advantage of this function is that it is simple and crude;

But the shortcomings are also obvious;

If there are a lot of tags;

And I just want to delete a specified one;

It will take a lot to write and need to be retained tag;

So there is a second method;

2: Delete the specified html tag

Usage method: strip_html_tags($tags,$str);

$tags: Tags that need to be deleted (array format)

$str: String that needs to be processed;

function strip_html_tags($tags,$str){
    $html=array();
    foreach ($tags as $tag) {
        $html[]="/(<(?:\/".$tag."|".$tag.")[^>]*>)/i";
    }
    $data=preg_replace($html, &#39;&#39;, $str);
    return $data;
}
echo strip_html_tags(array(&#39;p&#39;,&#39;img&#39;),$str);
//输出:<div>这里是p标签<a href="">这里是a标签</a><br></div>;
Copy after login

3: Delete tags and tag content

Usage: strip_html_tags($tags,$str);

$tags: Tags that need to be deleted (array format)

$str: String that needs to be processed;

function strip_html_tags($tags,$str){
    $html=array();
    foreach ($tags as $tag) {
        $html[]=&#39;/<&#39;.$tag.&#39;.*?>[\s|\S]*?<\/&#39;.$tag.&#39;>/&#39;;
        $html[]=&#39;/<&#39;.$tag.&#39;.*?>/&#39;;
    }
    $data=preg_replace($html,&#39;&#39;,$str);
    return $data;
}
echo strip_html_tags(array(&#39;a&#39;,&#39;img&#39;),$str);
//输出<div><p>这里是p标签</p><br></div>
Copy after login

Many website articles will contain website names and links;

For exampleBai Junyao Blog;

This function is specially designed to treat this kind of problem;

Don’t use this function to collect data from this site;

Otherwise, I guarantee I won’t beat you to death;

4: Ultimate function , delete the specified tag; delete or retain the content in the tag;

Usage method: strip_html_tags($tags,$str,$content);

$tags: Tags that need to be deleted (array format )

$str: the string that needs to be processed;

$ontent: whether to delete the content in the tag 0 retain the content 1 do not retain the content

/**
 * 删除指定标签
 *
 * @param array $tags     删除的标签  数组形式
 * @param string $str     html字符串
 * @param bool $content   true保留标签的内容text
 * @return mixed
 */
function stripHtmlTags($tags, $str, $content = true)
{
    $html = [];
    // 是否保留标签内的text字符
    if($content){
        foreach ($tags as $tag) {
            $html[] = &#39;/(<&#39; . $tag . &#39;.*?>(.|\n)*?<\/&#39; . $tag . &#39;>)/is&#39;;
        }
    }else{
        foreach ($tags as $tag) {
            $html[] = "/(<(?:\/" . $tag . "|" . $tag . ")[^>]*>)/is";
        }
    }
    $data = preg_replace($html, &#39;&#39;, $str);
    return $data;
}
//输出<div><p>这里是p标签</p><img src="" alt="这里是img标签"><br></div>;
Copy after login

So much has been said before ;

In fact, this last function is the real thing;

It is not difficult to solve all kinds of difficult and complicated problems of tag deletion in one go;

Don’t look at the screenshot below;

It’s just a little bit colorful to look good;

I mainly used it to make up the picture as the cover of the article;

For more PHP related knowledge, please visit PHP中文网!

The above is the detailed content of Can php delete div?. For more information, please follow other related articles on the PHP Chinese website!

Related labels:
php
source:php.cn
Statement of this Website
The content of this article is voluntarily contributed by netizens, and the copyright belongs to the original author. This site does not assume corresponding legal responsibility. If you find any content suspected of plagiarism or infringement, please contact admin@php.cn
Popular Tutorials
More>
Latest Downloads
More>
Web Effects
Website Source Code
Website Materials
Front End Template