PHP で CSV ファイルを 使う
この記事は 2015年 3月 24日 に書かれた記事です。
PHP で 何かしらのデータを 一覧表示したいとき
ひたすら リストタグを使って 表示させても良いですが
CSVを 使って 処理したほうが 後々 更新が楽そうですよね??
と いうわけで CSVで 処理できるモノを 探しましたら
良い物が見つかったので 紹介させていただきます!!
I referred to mopi テクニカル.
http://pokoda.tumblr.com/post/44362557334/php-fgetcsv-csv
僕は この戻り値から
1行目を Keyにして Arrayで 返す 関数を使いました
<?php
//---------------------------------------------------------------------------
// CSVからデータ取得
//---------------------------------------------------------------------------
function get_csv_list() {
$file = array(
'dir' => get_template_directory().'/resources/csv/',
'name' => 'hoge'.'.csv',
);
$getCSV = new Mopi_GetCsv($file['dir'].$file['name']);
$getCSV->setFromEncoding('sjis-win');
$getCSV->setToEncoding('UTF-8');
if ( count($getCSV) != 0 ) :
$csv = array();
$return = array();
$csv_header = array();
$csv_header_set = false;
foreach($getCSV as $row) :
if ( $row == false ) break;
if ( !$csv_header_set ) :
foreach( $row as $cell ) :
$csv_header[] = $cell;
endforeach;
$csv_header_set = true;
else :
$csv_line = array();
for( $i = 0; $i < count($row); $i++ ) :
$csv_line[$csv_header[$i]] = $row[$i];
endfor;
$csv[] = $csv_line;
endif;
endforeach;
$return = $csv;
else :
$return = array();
endif;
return $return;
}