How to remove html and get plain text in php
With the continuous development of the Internet and the improvement of user needs, more and more websites need to provide text editing functions, so users can add, edit or delete content on the page. When these contents are saved to the database or displayed on the page, they usually need to undergo some processing to make them into plain text format.
For PHP programmers, the process of removing HTML, that is, the process of converting a piece of rich text into plain text format, is an important skill. So, how do you use PHP to strip away HTML and get plain text? The following article will give some practical methods on this topic.
Use the strip_tags() function to remove HTML tags
There is a strip_tags() function in PHP that can remove HTML tags and obtain a string in plain text format. The function format is as follows:
string strip_tags ( string $str [, string $allowable_tags ] )
The first parameter is the string to be processed, and the second parameter is the name of the tag element that is allowed to be retained. If the second parameter is not specified, all HTML tags will be removed.
For example, the following code will remove all tag elements in the HTML text and output the result:
<?php $html = '<div><p>Hello, world!</p></div>'; $text = strip_tags($html); echo $text; // 输出结果:Hello, world! ?>
The above method can be expanded to support retaining the specified tag elements.
<?php $html = '<div><p>Hello, world!</p><a href="www.google.com">Google</a></div>'; $text = strip_tags($html, '<p>'); echo $text; // 输出结果:<p>Hello, world!</p> ?>
Use regular expressions to remove HTML tags
In addition to the strip_tags() function, using regular expressions is also a common method. Regular expressions can match HTML tags and remove them. The following is a sample code:
<?php $html = '<div><p>Hello, world!</p></div>'; $text = preg_replace('/<[^>]*>/', '', $html); echo $text; // 输出结果:Hello, world! ?>
Use the preg_replace() function and the regular expression "/<1*>/" to remove the HTML tags. This regular expression can match any string starting with "<" and ending with ">". The "^>" in brackets means matching all characters except ">".
Realize more refined HTML tag removal
Although the above two methods are simple and effective, they will completely remove HTML tags, including some formatting tags, such as bold, italics, underline, etc. What if you don't want to remove these tags completely, but just want to keep their style?
At this time we can use PHP DOM extension to achieve more sophisticated HTML tag removal. PHP DOM extension is a powerful and flexible extension that can parse HTML and XML documents and then operate on them, such as querying, inserting, deleting nodes, etc.
The following is a sample code that uses PHP DOM extension to remove HTML tags:
<?php $html = '<div><p><strong>Hello, </strong><i>world</i>!</p></div>'; $dom = new DOMDocument(); $dom->loadHTML($html); $body = $dom->getElementsByTagName('body')->item(0); $text = $body->textContent; echo $text; // 输出结果:Hello, world! ?>
First create a DOMDocument object, and then pass the HTML string to be processed to its loadHTML() method. Next, use the getElementsByTagName('body')->item(0) method to get the body element in HTML, and then use the textContent attribute to get all the plain text content under the body element. Finally, the results are output to the screen.
Summary
This article introduces three PHP-based methods to remove HTML tags and obtain plain text. The first is a simple strip_tags() function, which can achieve the most basic HTML tag removal. The second method uses the advantages of regular expressions to match and remove HTML tags. The third method uses PHP DOM extension, which can Completely control the HTML system and more finely control the output results. Everyone can flexibly choose to use it according to their own needs.
- > ↩
The above is the detailed content of How to remove html and get plain text in php. For more information, please follow other related articles on the PHP Chinese website!

Hot AI Tools

Undresser.AI Undress
AI-powered app for creating realistic nude photos

AI Clothes Remover
Online AI tool for removing clothes from photos.

Undress AI Tool
Undress images for free

Clothoff.io
AI clothes remover

Video Face Swap
Swap faces in any video effortlessly with our completely free AI face swap tool!

Hot Article

Hot Tools

Notepad++7.3.1
Easy-to-use and free code editor

SublimeText3 Chinese version
Chinese version, very easy to use

Zend Studio 13.0.1
Powerful PHP integrated development environment

Dreamweaver CS6
Visual web development tools

SublimeText3 Mac version
God-level code editing software (SublimeText3)

Hot Topics









