Home  >  Article  >  Backend Development  >  How to convert php table into two-dimensional array

How to convert php table into two-dimensional array

PHPz
PHPzOriginal
2023-04-18 10:18:05408browse

In PHP development, we often need to display data on the page in the form of a table. At this time, we need to convert the table data into a two-dimensional array to facilitate processing and operation in the code. This article will introduce how to convert a PHP table into a two-dimensional array.

1. HTML table

First, we need an HTML table for conversion. Suppose we have the following table:


  
    
      
      
      
    
  
  
    
      
      
      
    
    
      
      
      
    
    
      
      
      
    
  
NameAgeGender
Lucy23Female
John31Male
Jane27Female

2. Convert to a two-dimensional array

We can use PHP's DOMDocument class to obtain the data of each row and column of the table, and then convert It is converted into a two-dimensional array. The specific code is as follows:

$table = '
NameAgeGender
Lucy23Female
John31Male
Jane27Female
'; $doc = new DOMDocument(); $doc->loadHTML($table); $rows = $doc->getElementsByTagName('tr'); $data = array(); foreach ($rows as $row) {     $cols = $row->getElementsByTagName('td');     $rowData = array();     foreach ($cols as $col) {         $rowData[] = $col->nodeValue;     }     $data[] = $rowData; }

In the above code, we pass the string of the HTML table as a parameter into the loadHTML method of the DOMDocument class, and then use the getElementsByTagName method to obtain each row of the table (represented by the tr tag) and Data for each column (represented using td labels).

When traversing each row of data, we use the nodeValue attribute to obtain the text content of each column and save it in a one-dimensional array. Finally, the one-dimensional array of each row is saved as an element in the $data two-dimensional array. This completes the conversion of HTML tables to two-dimensional arrays.

3. Output results

We can use the var_dump or print_r function to view the conversion results. The code is as follows:

var_dump($data);

The output result is as follows:

array(3) {
  [0]=>
  array(3) {
    [0]=>
    string(4) "Lucy"
    [1]=>
    string(2) "23"
    [2]=>
    string(6) "Female"
  }
  [1]=>
  array(3) {
    [0]=>
    string(4) "John"
    [1]=>
    string(2) "31"
    [2]=>
    string(4) "Male"
  }
  [2]=>
  array(3) {
    [0]=>
    string(4) "Jane"
    [1]=>
    string(2) "27"
    [2]=>
    string(6) "Female"
  }
}

The above result is a two-dimensional array converted from the HTML table. Each one-dimensional array represents a row of data, and the array element is each The text content of the cell.

Summary

The above is how to convert a PHP table into a two-dimensional array. By using the DOMDocument class to obtain the data of each row and column of the HTML table, and then converting it into a two-dimensional array, we can process and operate the data more conveniently.

The above is the detailed content of How to convert php table into two-dimensional array. For more information, please follow other related articles on the PHP Chinese website!

Statement:
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