Rumah  >  Artikel  >  pembangunan bahagian belakang  >  Bagaimana untuk menukar jadual php kepada tatasusunan dua dimensi

Bagaimana untuk menukar jadual php kepada tatasusunan dua dimensi

PHPz
PHPzasal
2023-04-18 10:18:05477semak imbas

Dalam pembangunan PHP, kita selalunya perlu memaparkan data pada halaman dalam bentuk jadual Pada masa ini, kita perlu menukar data jadual kepada tatasusunan dua dimensi untuk memudahkan pemprosesan dan operasi dalam kod. Artikel ini akan memperkenalkan cara menukar jadual PHP kepada tatasusunan dua dimensi.

1. Jadual HTML

Pertama sekali, kami memerlukan jadual HTML untuk penukaran. Katakan kita mempunyai jadual berikut:

<table>
  <thead>
    <tr>
      <th>Name</th>
      <th>Age</th>
      <th>Gender</th>
    </tr>
  </thead>
  <tbody>
    <tr>
      <td>Lucy</td>
      <td>23</td>
      <td>Female</td>
    </tr>
    <tr>
      <td>John</td>
      <td>31</td>
      <td>Male</td>
    </tr>
    <tr>
      <td>Jane</td>
      <td>27</td>
      <td>Female</td>
    </tr>
  </tbody>
</table>

2. Tukar kepada tatasusunan dua dimensi

Kita boleh menggunakan kelas DOMDocument PHP untuk mendapatkan data setiap baris dan lajur jadual, Kemudian tukarkannya kepada tatasusunan 2D. Kod khusus adalah seperti berikut:

$table = '<table><thead><tr><th>Name</th><th>Age</th><th>Gender</th></tr></thead><tbody><tr><td>Lucy</td><td>23</td><td>Female</td></tr><tr><td>John</td><td>31</td><td>Male</td></tr><tr><td>Jane</td><td>27</td><td>Female</td></tr></tbody></table>';

$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;
}

Dalam kod di atas, kami menghantar rentetan jadual HTML sebagai parameter ke dalam kaedah loadHTML kelas DOMDocument, dan kemudian gunakan kaedah getElementsByTagName untuk mendapatkan setiap baris jadual (diwakili oleh teg tr ) dan data untuk setiap lajur (diwakili menggunakan label td).

Apabila merentasi setiap baris data, kami menggunakan atribut nodeValue untuk mendapatkan kandungan teks setiap lajur dan menyimpannya dalam tatasusunan satu dimensi. Akhir sekali, tatasusunan satu dimensi bagi setiap baris disimpan sebagai elemen dalam tatasusunan dua dimensi $data. Ini melengkapkan penukaran jadual HTML kepada tatasusunan dua dimensi.

3. Hasil keluaran

Kita boleh menggunakan fungsi var_dump atau print_r untuk melihat hasil penukaran. Kodnya adalah seperti berikut:

var_dump($data);

Hasil output adalah seperti berikut:

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"
  }
}

Hasil di atas ialah tatasusunan dua dimensi yang ditukar daripada jadual HTML, di mana setiap satu- tatasusunan dimensi mewakili satu baris data, dan tatasusunan Elemen ialah kandungan teks setiap sel.

Ringkasan

Di atas ialah cara menukar jadual PHP kepada tatasusunan dua dimensi. Dengan menggunakan kelas DOMDocument untuk mendapatkan data setiap baris dan lajur jadual HTML, dan kemudian menukarnya menjadi tatasusunan dua dimensi, kami boleh memproses dan mengendalikan data dengan lebih mudah.

Atas ialah kandungan terperinci Bagaimana untuk menukar jadual php kepada tatasusunan dua dimensi. Untuk maklumat lanjut, sila ikut artikel berkaitan lain di laman web China PHP!

Kenyataan:
Kandungan artikel ini disumbangkan secara sukarela oleh netizen, dan hak cipta adalah milik pengarang asal. Laman web ini tidak memikul tanggungjawab undang-undang yang sepadan. Jika anda menemui sebarang kandungan yang disyaki plagiarisme atau pelanggaran, sila hubungi admin@php.cn