野間ソフト株式会社
■サイトマップ | ■ブログ

home>技術情報>NomaSoftLib(php)>ioモジュール>io/csvモジュール

io/csvモジュール

CSVファイルをSQLのテーブル制御に似たインターフェースで制御する。CSVファイルはDBを使うよりは簡単にコーディングできる手軽さはあるが、巨大なデータの管理や公開したくないデータの管理には向かない。ただし、テーブルを複数のCSVファイルに分割して管理するNM_NestedCsvTableクラスを用いればある程度大きなデータを扱うこともできる。また、CSVファイルで保存されるため、自システム外から直接参照できるため、低コストで外部システムとデータ連携ができるというメリットはある。

提供するクラスは次の2つ

  • NM_CsvTable($filepath, $desc, $config)クラス: 1つのCSVファイルを1テーブルとして扱うクラス。
  • NM_NestedCsvTable($dirpath, $desc, $config)クラス: 複数のCSVファイルを1テーブルとして扱うクラス。いくつかのフィールド変数をキーとしてクラスタリングを行う。

各クラスには下記のメソッドが定義されている。

  • create(): テーブルの生成。
  • destroy(): テーブルの破棄。
  • insert(&$elms): 要素の追加。$elmsは要素(マップ形式)の配列。
  • update(&$elms): 要素の更新。$elmsは要素(マップ形式)の配列。
  • remove($cond): 要素の削除。$condは条件文。
  • load(&$cont, $cond): 要素の読み込み。$contは読み込み先のコンテナ、$condは読み込み条件。