How to convert php html table into array
Apr 19, 2023 am 11:29 AMTables in HTML are often used to display data. However, when we need to process the data, it is more convenient to convert the table data into an array. PHP is a powerful programming language that provides many functions and methods to process HTML tables and convert them into arrays.
1. The basic format of HTML tables
Before introducing table conversion, we need to understand the basic format of HTML tables. A general HTML table consists of tags such as <table>, <tr>, <th>, and <td>. Among them, <table> represents the entire table, <tr> represents the row, <th> represents the column header, and <td> represents the cell.
For example, the following is a simple HTML table:
<table> <tr> <th>姓名</th> <th>年龄</th> <th>性别</th> </tr> <tr> <td>张三</td> <td>25</td> <td>男</td> </tr> <tr> <td>李四</td> <td>28</td> <td>女</td> </tr> </table>
2. Use PHP to convert the HTML table into an array
In PHP, we can use regular expressions or DOM to parse HTML tables. Here we introduce a method of using DOM.
- Create DOM object
First, we need to create a DOM object and load the HTML content into it. HTML strings can be converted into DOM objects using the simplexml_load_string() function.
$html = '<table>...</table>'; $dom = new DOMDocument(); $dom->loadHTML($html);
- Traverse table contents
Next, we need to traverse the table contents and store the value of each cell into an array. You can use the getElementsByTagName() method to get all cells in the table.
$table = $dom->getElementsByTagName('table')[0]; $rows = $table->getElementsByTagName('tr'); $data = array(); foreach ($rows as $row) { $cols = $row->getElementsByTagName('td'); $row_data = array(); foreach ($cols as $col) { $row_data[] = $col->nodeValue; } $data[] = $row_data; }
In this code, we first obtain the table object, and then traverse each row. For each row, we get all the cells in it and add the cell's value to an array of row data. Finally, we add the row data to the table data array.
- Output table data
Now that we have converted the HTML tables into arrays, they can be output or further processed. For example, we can use the print_r() function to print out the converted data.
print_r($data);
The output results are as follows:
Array ( [0] => Array ( [0] => 姓名 [1] => 年龄 [2] => 性别 ) [1] => Array ( [0] => 张三 [1] => 25 [2] => 男 ) [2] => Array ( [0] => 李四 [1] => 28 [2] => 女 ) )
3. Conclusion
Through the above code, we can convert the HTML table into a PHP array with a two-dimensional array structure. This approach is a simple yet powerful way to quickly process data in HTML tables. In actual projects, we need to make certain modifications and optimizations to the code based on actual needs.
The above is the detailed content of How to convert php html table into array. For more information, please follow other related articles on the PHP Chinese website!

Hot Article

Hot tools Tags

Hot Article

Hot Article Tags

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

What are the best practices for deduplication of PHP arrays

Can PHP array deduplication take advantage of key name uniqueness?

What Are the Latest PHP Coding Standards and Best Practices?

Does PHP array deduplication need to be considered for performance losses?

How Do I Work with PHP Extensions and PECL?

How to Implement message queues (RabbitMQ, Redis) in PHP?

What are the optimization techniques for deduplication of PHP arrays

How to Use Reflection to Analyze and Manipulate PHP Code?
