ホームページ バックエンド開発 PHPの問題 PHP HTMLテーブルを配列に変換する方法

PHP HTMLテーブルを配列に変換する方法

Apr 19, 2023 am 11:29 AM

HTML のテーブルはデータの表示によく使用されますが、データを処理する必要がある場合は、テーブル データを配列に変換する方が便利です。 PHP は、HTML テーブルを処理して配列に変換するための多くの関数とメソッドを提供する強力なプログラミング言語です。

1. HTML テーブルの基本形式

テーブル変換を紹介する前に、HTML テーブルの基本形式を理解する必要があります。一般的な HTML テーブルは、

、、
などのタグで構成されます。このうち、

は表全体を表し、は行を表し、
は列ヘッダーを表し、 はセルを表します。

たとえば、次は単純な HTML テーブルです:

<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. PHP を使用して HTML テーブルを配列に変換します

PHP では正規表現を使用できますまたは DOM を使用して HTML テーブルを解析します。ここではDOMを利用する方法を紹介します。

  1. DOM オブジェクトの作成

まず、DOM オブジェクトを作成し、そこに HTML コンテンツをロードする必要があります。 simplexml_load_string() 関数を使用して、HTML 文字列を DOM オブジェクトに変換できます。

$html = '<table>...</table>';
$dom = new DOMDocument();
$dom->loadHTML($html);
  1. テーブルの内容を走査する

次に、テーブルの内容を走査し、各セルの値を配列に格納する必要があります。 getElementsByTagName() メソッドを使用すると、テーブル内のすべてのセルを取得できます。

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

このコードでは、最初にテーブル オブジェクトを取得し、次に各行を走査します。各行について、その中のすべてのセルを取得し、セルの値を行データの配列に追加します。最後に、行データをテーブル データ配列に追加します。

  1. 出力テーブル データ

HTML テーブルを配列に変換したので、出力したり、さらに処理したりできます。たとえば、print_r() 関数を使用して、変換されたデータを出力できます。

print_r($data);

出力結果は次のとおりです:

Array
(
    [0] => Array
        (
            [0] => 姓名
            [1] => 年龄
            [2] => 性别
        )

    [1] => Array
        (
            [0] => 张三
            [1] => 25
            [2] => 男
        )

    [2] => Array
        (
            [0] => 李四
            [1] => 28
            [2] => 女
        )
)

3. 結論

上記のコードにより、HTML テーブルを 2 次元の PHP 配列に変換できます。配列構造。このアプローチは、HTML テーブル内のデータを迅速に処理するためのシンプルかつ強力な方法です。実際のプロジェクトでは、実際のニーズに基づいてコードに特定の変更と最適化を行う必要があります。

以上がPHP HTMLテーブルを配列に変換する方法の詳細内容です。詳細については、PHP 中国語 Web サイトの他の関連記事を参照してください。

このウェブサイトの声明
この記事の内容はネチズンが自主的に寄稿したものであり、著作権は原著者に帰属します。このサイトは、それに相当する法的責任を負いません。盗作または侵害の疑いのあるコンテンツを見つけた場合は、admin@php.cn までご連絡ください。

ホットAIツール

Undress AI Tool

Undress AI Tool

脱衣画像を無料で

Undresser.AI Undress

Undresser.AI Undress

リアルなヌード写真を作成する AI 搭載アプリ

AI Clothes Remover

AI Clothes Remover

写真から衣服を削除するオンライン AI ツール。

Clothoff.io

Clothoff.io

AI衣類リムーバー

Video Face Swap

Video Face Swap

完全無料の AI 顔交換ツールを使用して、あらゆるビデオの顔を簡単に交換できます。

ホットツール

メモ帳++7.3.1

メモ帳++7.3.1

使いやすく無料のコードエディター

SublimeText3 中国語版

SublimeText3 中国語版

中国語版、とても使いやすい

ゼンドスタジオ 13.0.1

ゼンドスタジオ 13.0.1

強力な PHP 統合開発環境

ドリームウィーバー CS6

ドリームウィーバー CS6

ビジュアル Web 開発ツール

SublimeText3 Mac版

SublimeText3 Mac版

神レベルのコード編集ソフト(SublimeText3)

ホットトピック