ホームページ  >  記事  >  バックエンド開発  >  PHP による Excel テーブルの読み取りと特定フィールドのデータのクエリの詳細な説明

PHP による Excel テーブルの読み取りと特定フィールドのデータのクエリの詳細な説明

PHPz
PHPzオリジナル
2023-04-05 10:29:061558ブラウズ

PHP は非常に一般的なサーバーサイド プログラミング言語であり、開発プロセス中、データの読み取りと操作が必要になることがよくあります。その中でも Excel テーブルは一般的なデータ ソースであり、Excel テーブルのデータを PHP でクエリおよび処理できれば、開発者にとって非常に便利で効率的になります。この記事では、PHP を使用して Excel テーブルを読み取る方法と、Excel の特定フィールドのデータをクエリする方法を紹介します。

1. PHP を使用して Excel テーブルを読み取る

PHP には、PHPExcel、PhpSpreadsheet など、Excel テーブルの読み取りに使用できる既製のライブラリが多数あります。この記事では、PhpSpreadsheet を使用して Excel テーブルを読み取ります。

  1. PhpSpreadsheet ライブラリをインストールする

まず、PhpSpreadsheet ライブラリをダウンロードしてインストールする必要があります。ライブラリは Github でダウンロードするか、Composer を使用してインストールできます。ダウンロードが完了したら、ファイルを解凍し、Phpreadsheet フォルダーを PHP プロジェクトのルート ディレクトリに配置します。

  1. Excel テーブルのインポート

PhpSpreadsheet を使用して Excel テーブルを読み取る前に、最初にテーブルをインポートする必要があります。 PhpSpreadsheet が提供する IOFactory のロード メソッドを使用して Excel テーブルをインポートできます。コードは次のとおりです:

use PhpOffice\PhpSpreadsheet\IOFactory;

$spreadsheet = IOFactory::load('file.xlsx');
  1. Excel テーブルのデータを取得します

After Excel テーブルをインポートすると、PhpSpreadsheet が提供するメソッドを通じてデータを取得できます。たとえば、次のコードを使用してテーブル内のすべてのデータを取得できます:

$sheet = $spreadsheet->getActiveSheet();

$dataArray = $sheet->toArray();

ここの $sheet は Excel テーブル内のワークシートを表します。ワークシート内のすべてのデータをバイナリに変換するには、toArray メソッドを使用します。 . 次元配列。この $dataArray は、インポートした Excel テーブル内のすべてのデータです。

2. Excel の特定フィールドのデータをクエリする

Excel テーブル内のすべてのデータを読み取った後、データをクエリできます。特定のフィールドのデータをクエリする必要があるとします。たとえば、「名前」、「性別」、「年齢」などのフィールドを含む学生情報テーブルがあります。次に、すべての女子の情報をクエリする必要があります。

  1. ヘッダーの取得

まず、テーブル内のヘッダーであるフィールド名を取得する必要があります。次のコードを通じてデータの最初の行を取得できます:

$header = $dataArray[0];
  1. Get all girl information

その後、データをフィルターできます。性別など、クエリが必要なフィールドに応じて、次のコードを使用して性別フィールド列のデータを取得できます。

$sexCol = array_search('性别', $header);

$sexData = array_column($dataArray, $sexCol);

ここでは、array_search 関数を使用してフィールド名を検索し、取得します。配列内のフィールドの位置。次に、array_column 関数を使用して、Excel テーブル配列全体のこのフィールドに対応する列データを取得します。

すべての女の子の情報をクエリする必要がある場合は、次のコードを使用してそれを実現できます:

$girlData = array();

for ($i = 1; $i < sizeof($dataArray); $i++) {
    if ($sexData[$i] === '女') {
        $girlData[] = $dataArray[$i];
    }
}

ここでは、すべてのデータ行を走査して、その行に女の子の情報が含まれているかどうかを判断します。そうであれば、行データを $girlData 配列に保存します。

3. まとめ

この記事では、PHP で Excel テーブルを読み取る方法を学び、PhpSpreadsheet ライブラリを使用して特定のフィールドのデータ クエリを実現しました。実際の開発中に Excel テーブルのデータの読み取りやクエリの問題が発生した場合は、この記事で紹介した方法を使用して、効率的で便利なデータ操作を実現することを検討してください。

以上がPHP による Excel テーブルの読み取りと特定フィールドのデータのクエリの詳細な説明の詳細内容です。詳細については、PHP 中国語 Web サイトの他の関連記事を参照してください。

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