Maison  >  Article  >  développement back-end  >  Comment supprimer les balises HTML en php

Comment supprimer les balises HTML en php

PHPz
PHPzoriginal
2023-03-23 17:20:572292parcourir

PHP est un langage de script populaire largement utilisé pour le développement de sites Web. Lors du développement d’un site Web, il est souvent nécessaire d’obtenir des données de la base de données et de les afficher sur la page Web. Cependant, le texte obtenu à partir de la base de données n'est pas nécessairement du texte brut. Parfois, il contient des balises HTML, telles que e388a4556c0f65e1904146cc1a846bee, 4a249f0d628e2318394fd9b75b4636b1, a4b561c25d9afb9ac8dc4d70affff419, etc.

Ces balises peuvent provoquer des interférences avec la mise en page et l'affichage du site Web, c'est pourquoi ces balises doivent parfois être supprimées. PHP fournit certaines fonctions et méthodes qui peuvent nous aider à supprimer les balises HTML. Voici quelques méthodes couramment utilisées.

Méthode 1 : fonction strip_tags()

La fonction strip_tags() est une fonction intégrée de PHP qui peut nous aider à supprimer les balises HTML.

Sa syntaxe est la suivante :

strip_tags(string $str, string $allowable_tags)

Où, $str est la chaîne de laquelle les balises HTML doivent être supprimées, et le paramètre facultatif $allowable_tags est une chaîne contenant les balises autorisées, et les autres balises seront supprimées. Si $allowable_tags n'est pas spécifié, toutes les balises HTML seront supprimées. Voici un exemple :

$str = "<p>这是一段带有HTML标签的文本。</p>";
echo strip_tags($str);

Le résultat est :

这是一段带有HTML标签的文本。

Vous pouvez voir que la fonction strip_tags() supprime avec succès les balises HTML.

Méthode 2 : Utiliser des expressions régulières

Les expressions régulières peuvent également nous aider à supprimer les balises HTML. Voici un exemple d'utilisation d'expressions régulières :

$str = "<p>这是一段带有HTML标签的文本。</p>";
echo preg_replace(&#39;/<[^>]*>/&#39;, &#39;&#39;, $str);

Le résultat est :

这是一段带有HTML标签的文本。

Dans cet exemple, nous utilisons la fonction preg_replace() Le premier paramètre est une expression régulière pour correspondre à toutes les balises HTML. Cette expression régulière signifie faire correspondre une chaîne contenant 0 ou plusieurs caractères non-> après <, puis la remplacer par une chaîne vide. Le deuxième paramètre est la chaîne à remplacer, c'est-à-dire la chaîne dont les balises HTML doivent être supprimées.

Méthode 3 : Utiliser la classe DOMDocument

En PHP, on peut également utiliser la classe DOMDocument pour supprimer les balises HTML.

La classe DOMDocument est une classe intégrée de PHP qui peut être utilisée pour traiter des documents XML et HTML.

Ce qui suit est un exemple d'utilisation de la classe DOMDocument :

$str = "<p>这是一段带有HTML标签的文本。</p>";
$dom = new DOMDocument();
$dom->loadHTML($str);
echo $dom->textContent;

Le résultat est :

这是一段带有HTML标签的文本。

Dans cet exemple, nous créons d'abord un objet DOMDocument, puis utilisons sa méthode loadHTML() pour charger la chaîne à partir de laquelle le HTML Les balises doivent être supprimées. Enfin, utilisez la propriété textContent pour obtenir le contenu en texte brut sans balises HTML.

Résumé

Cet article présente trois méthodes couramment utilisées pour nous aider à supprimer les balises HTML. La fonction

  • strip_tags() peut supprimer toutes les balises HTML ou conserver uniquement certaines balises spécifiées.

  • L'utilisation d'expressions régulières peut faire correspondre et remplacer les balises HTML de manière plus flexible.

  • L'utilisation de la classe DOMDocument peut nous aider à obtenir facilement du contenu en texte brut qui ne contient pas de balises HTML. La méthode à choisir dépend de la situation.

Si vous avez seulement besoin de supprimer toutes les balises HTML, la fonction strip_tags() peut être le choix le plus simple et le plus approprié. Si vous avez besoin de contrôler de manière plus flexible les balises HTML à supprimer, vous pouvez utiliser des expressions régulières. Si vous devez traiter des documents HTML plus complexes, il peut être plus pratique d'utiliser la classe DOMDocument.

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!

Déclaration:
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