このエントリーをはてなブックマークに追加


PHPでCSVファイルをパースし配列に格納する・str_getcsv

str_getcsv関数を使ってCSVファイルをパースし配列に格納するPHPサンプルコードを以下に紹介します。


スポンサーリンク

関連資料

php.netのURLです。
http://jp1.php.net/manual/ja/function.str-getcsv.php

str_getcsv関数のサンプルコード

CSVファイルとして以下のファイルを用意しました。

php,python,perl
ruby,java,c++
c#,vb,delphi

str_getcsvのサンプルコード

<?php
$ary = array();
$h = fopen("data.csv", "r");
if ($h == FALSE) {
  print "File not found.\n";
} else {
  while(!feof($h)) {
    $l = fgets($h);
    $ary[] = str_getcsv($l);
  }
}
if ($h != FALSE) {
  fclose($h);
}
print_r($ary);
?>

実行結果

本スクリプトと同じ場所にdata.csvを配置して実行します。
配列の中に配列になったCSV要素が格納されているのがprint_r関数により確認することができます。

$ php getcsv.php
Array
(
    [0] => Array
        (
            [0] => php
            [1] => python
            [2] => perl
        )

    [1] => Array
        (
            [0] => ruby
            [1] => java
            [2] => c++
        )

    [2] => Array
        (
            [0] => c#
            [1] => vb
            [2] => delphi
        )

    [3] => Array
        (
            [0] =>
        )

)

以上、CSVファイルを配列(配列内に配列)に格納するサンプルコードでした。


スポンサーリンク


添付ファイル: filedata.csv 607件 [詳細] filegetcsv.php 591件 [詳細]

トップ   編集 凍結 差分 バックアップ 添付 複製 名前変更 リロード   新規 一覧 検索 最終更新   ヘルプ   最終更新のRSS
Last-modified: 2015-03-20 (金) 22:31:50