PHP を使用して CSV ファイルを処理する方法 (コード例)

青灯夜游
リリース: 2023-04-05 07:46:01
オリジナル
5232 人が閲覧しました

PHP では、fgetcsv() 関数を使用して CSV ファイルを解析できます。これにより、指定されたリソース内の CSV フィールドが自動的に解析されます。 PHPを使用してCSVファイルを処理する方法については、次の記事で詳しく紹介していますので、ご参考になれば幸いです。 [ビデオチュートリアルの推奨: PHP チュートリアル]

PHP を使用して CSV ファイルを処理する方法 (コード例)

CSV ファイルとは何ですか?

CSV ファイルは、基本的には特定の形式に準拠した単なるテキスト ファイルであり、データの保存に使用されるプレーン テキスト ファイル形式であり、通常はスプレッドシートまたはデータベース ソフトウェアで使用されます。 CSV ファイルでは、すべての値はカンマで区切られます (したがって、頭字語の背後にある意味は「カンマ区切り値」です)。行は改行で区切られます。

概要: CSV ファイルはカンマ、データ、改行で構成され、改行で行が区切られ、カンマで値/列が区切られます。

CSV ファイルの例として、example.csv という名前を付けます:

Ted,USA,21
Lisa,UK,23
Michael,USA,20
Louise,Ireland,30
ログイン後にコピー

ご覧のとおり、各行はカンマで区切られており、最初の列はその人の名前、2 番目の列はその人の国、最後の列はその人の年齢で、各人物は改行で区切られます。

PHP を使用して CSV ファイルを処理するにはどうすればよいですか?

#php は fgetcsv() 関数を使用して CSV ファイルを解析できます。この関数は、開いているファイルから 1 行を解析し、CSV フィールドを検証します。

構文は次のとおりです:

fgetcsv("filename.csv", 1000, ",");
ログイン後にコピー

filename.csv: CSV ファイルの名前。

1000: 最長の線の長さを示します。

",": オプションの区切り文字パラメータを示します。デフォルトはもちろんカンマ (,) です。

fgetcsv() 関数を使用するには、まず fopen() 関数を使用してファイルを読み取り用に開き、次に fclose() 関数を使用してファイルを閉じてコードを終了する必要があります。その間に、ループを使用して各 CSV 行を個別に解析します。

これに対処する方法を簡単に紹介します:

1. fopen() 関数を使用してファイルを開いて読み取ります:

$h = fopen("filename.csv", "r");
ログイン後にコピー

ファイルを開いて読み取るには、「r 」モードを使用します。変数 $h は、ファイルからのデータの処理を保存します。

2. fgetcsv() 関数を使用して、CSV ファイルのデータを 1 行ずつ読み取り、データの各行を $data という名前の配列に個別に保存します。

$data = fgetcsv($h, 1000, ",");
ログイン後にコピー

すべての行を読み取るには、while ループを使用する必要があります:

while (($data = fgetcsv($h, 1000, ",")) !== FALSE) 
{
  // 读取数据
}
ログイン後にコピー

3. ファイルを閉じる必要があります

fclose($h);
ログイン後にコピー

上記の 3 つの手順を組み合わせます。

<?php
// 打开文件并阅读
if (($h = fopen("example.csv", "r")) !== FALSE) 
{
  // 将每行数据都转换为本地$data变量并储存
  while (($data = fgetcsv($h, 1000, ",")) !== FALSE) 
  {
   //输出每行数据
    var_dump($data);
  }
  // 关闭文件
  fclose($h);
}
?>
ログイン後にコピー

出力:

PHP を使用して CSV ファイルを処理する方法 (コード例)

コード例: CSV ファイルを PHP 多次元配列に変換

次のコードは、多次元配列 ($the_big_array)。その各項目は、CSV ファイル内の単一行から変換された配列で構成されます。

<?php 
$filename = &#39;example.csv&#39;;
// 用于保存所有数据的多维(嵌套)数组
$the_big_array = []; 
// 打开文件并阅读
if (($h = fopen("{$filename}", "r")) !== FALSE) 
{
  // 文件中的每一行数据都被转换为我们调用的单个数组$data
  // 数组的每个元素以逗号分隔
  while (($data = fgetcsv($h, 1000, ",")) !== FALSE) 
  {
    // 每个单独的数组都被存入到嵌套的数组中
    $the_big_array[] = $data;
  }
  // 关闭文件
  fclose($h);
}
// 以可读格式显示代码
echo "<pre class="brush:php;toolbar:false">";
var_dump($the_big_array);
echo "
ログイン後にコピー
"; ?>

出力:

PHP を使用して CSV ファイルを処理する方法 (コード例)

上記がこの記事の全内容です。皆さんの学習に役立つことを願っています。さらにエキサイティングなコンテンツについては、PHP 中国語 Web サイトの関連チュートリアルのコラムに注目してください。 ! !

以上がPHP を使用して CSV ファイルを処理する方法 (コード例)の詳細内容です。詳細については、PHP 中国語 Web サイトの他の関連記事を参照してください。

関連ラベル:
ソース:php.cn
このウェブサイトの声明
この記事の内容はネチズンが自主的に寄稿したものであり、著作権は原著者に帰属します。このサイトは、それに相当する法的責任を負いません。盗作または侵害の疑いのあるコンテンツを見つけた場合は、admin@php.cn までご連絡ください。
最新の問題
人気のチュートリアル
詳細>
最新のダウンロード
詳細>
ウェブエフェクト
公式サイト
サイト素材
フロントエンドテンプレート