Maison > développement back-end > Problème PHP > Comment effacer les balises html en php ?

Comment effacer les balises html en php ?

青灯夜游
Libérer: 2023-03-07 13:10:02
original
2850 Les gens l'ont consulté

Comment effacer les balises html en PHP : 1. Utilisez la fonction strip_tags() pour effacer les balises html, syntaxe "strip_tags(string)" ; 2. Utilisez la fonction strip_html_tags() pour supprimer les balises html spécifiées. éventuellement supprimer ou conserver le contenu dans la balise.

Comment effacer les balises html en php ?

Ceux qui récupèrent souvent des articles sur d'autres sites ; je veux dire ceux qui collectent par lots sans lire du tout le contenu, ils utiliseront inévitablement la suppression du HTML ; tags Fonction ; voici 3 méthodes à des fins différentes ;

$str=&#39;<p><p>这里是p标签</p><img src="" alt="这里是img标签"><a href="">这里是a标签</a><br></p>&#39;;
Copier après la connexion

1. Supprimer tout ou conserver les balises html spécifiées

la propre fonction strip_tags de php peut répondre aux exigences , < La fonction 🎜>

strip_tags() supprime les balises HTML, XML et PHP dans la chaîne et renvoie la chaîne supprimée. [Recommandé : "

Tutoriel vidéo PHP"]

Utilisation :

strip_tags(string,allow);
Copier après la connexion

  • string : la chaîne qui doit être traitée

  • autoriser : balises spécifiées qui doivent être conservées, vous pouvez en écrire plusieurs

Exemple 1 :


echo strip_tags($str);
//输出:这里是p标签这里是a标签
Copier après la connexion

Exemple 2 ; : >
echo strip_tags($str,&#39;<p><a>&#39;);
//输出:<p>这里是p标签</p><a href="">这里是a标签</a>
Copier après la connexion

L'avantage de cette fonction est qu'elle est simple et grossière ;

Mais l'inconvénient est aussi évident ;

S'il y a beaucoup de tags ;

Et je veux juste supprimer celui spécifié Un certain ;

Cela nécessite d'écrire beaucoup de balises qui doivent être conservées ;

Il existe donc une deuxième méthode ;

2. Supprimer la balise html spécifiée

Utilisation :

strip_html_tags($tags,$str);
Copier après la connexion

    $tags : balises qui doivent être supprimées (format tableau)
  • $str : obligatoire Chaîne traitée
  • 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>;
    Copier après la connexion
  • De nombreux articles de sites Web contiendront des noms et des liens de sites Web

Par exemple ; ,

<a href="http://www.php.cn">php中文网</a>;
Copier après la connexion

Cette fonction est conçue pour gérer cela ;

N'utilisez pas cette fonction pour collecter ce site ;

Sinon, je vous garantis que je ne vous battrai pas à mort ;

3. La fonction ultime, supprimer la balise spécifiée ; supprimer ou conserver le contenu dans les balises

Utilisation :

strip_html_tags($tags,$str,$content);
Copier après la connexion

    $tags : les balises qui doivent être supprimées (format tableau)
  • $str : la chaîne qui doit être traitée
  • $ontent : s'il faut supprimer le contenu de la balise 0 conserver le contenu 1 ne pas conserver le contenu

  • /**
     * 删除指定标签
     *
     * @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>;
    Copier après la connexion
    J'ai tellement parlé avant ;

    En fait, cette dernière fonction est la vraie ;

    Il n'est pas difficile de résoudre toutes sortes de problèmes difficiles et compliqués de suppression de balises en une seule fois ;

    Ne regardez pas la capture d'écran ci-dessous;

    C'est juste sympa avec un peu de couleur

    Je l'ai principalement utilisé pour maquiller la photo de la couverture de l'article

    Comment effacer les balises html en php ?Pour plus de connaissances liées à la programmation, veuillez visiter :

    Introduction à la programmation

     ! !

    Ce qui précède est le contenu détaillé de. pour plus d'informations, suivez d'autres articles connexes sur le site Web de PHP en chinois!

Étiquettes associées:
source:php.cn
Déclaration de ce site Web
Le contenu de cet article est volontairement contribué par les internautes et les droits d'auteur appartiennent à l'auteur original. Ce site n'assume aucune responsabilité légale correspondante. Si vous trouvez un contenu suspecté de plagiat ou de contrefaçon, veuillez contacter admin@php.cn
Tutoriels populaires
Plus>
Derniers téléchargements
Plus>
effets Web
Code source du site Web
Matériel du site Web
Modèle frontal