勉強したことのメモ

webプログラマ見習いが勉強したことのメモ。

PHPで簡単にCSVファイルの生成

      2014/05/23

簡単にデータ並べるだけのCSVファイル生成。
file_put_contensででけた。

■ソース
<?
$file_path     = './csvlog/aaa.csv';
$data_array     = array(
0 => array('name' => 'taro', 'score' => 80),
1 => array('name' => 'kouji', 'score' => 58),
2 => array('name' => 'takeshi', 'score' => 77),
);
$data = '"ID","名前","スコア"
';
for ($i = 0; $i < count($data_array); ++$i) {
$data .= '"' . $i . '","' . $data_array[$i]['name'] . '","' . $data_array[$i]['score'] . '"
';
}
mb_convert_variables('SJIS', 'UTF-8', $data); //文字コード変換
file_put_contents($file_path, $data, LOCK_EX); //書き込み
?>

<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transtional//EN" "http://www.w3c.org/TR/html4/loose.dtd">
<meta http-equiv="content-type" content="text/html"/>
<meta cherset = "UTF-8">
<html lang="ja">
<head>
<title>CSV</title>
</head>
<body>
<h1>CSV</h1>
<? if (is_file($file_path)) : ?><!--ファイルがあった場合のみリンクを出す-->
<a href="<?=$file_path;?>">CSVリンク</a>
<? endif; ?>
</body>
</html>

■その他
エクセルはshift-jisがデフォらしい。
なのでUTF-8から変換。mb_convert_variablesだと配列も
一気に変換できる。

せっかくなので次はちゃんとCSV関連の関数を使ってみたいところ。

 - PHP

  関連記事

PHPでキーや値は保持したまま順番を入れ替える

PHPで連想配列のキーや値は保持したまま順番をランダムに入れ替えたかった。一発で ...

PHPにて自動でファイルを呼び出す(auto_prepend_file)

設定ファイルとかをinclude('config.php')みたいに、 いちいち ...

MySQLでのエラーについて

エラーログをとるようになってから色々エラーを 見る機会が出来てきたのでメモ。 プ ...

PHPでURLを解析してクエリを抽出する方法

formからGETでURLの文字列を送信したものを、受信した側でクエリ部分のみ抽 ...

ディレクトリに設置してあるフォルダをPHPで調べて表示

やりたい事はsampleというディレクトリがあったとして、その直下にあるフォルダ ...

PHPでランダムな値を取得するケース諸々

テストデータを作成する際に、ランダムな値を入れたかったけど、 色々ケースがあった ...

PHPでディレクトリの作成と削除

PHPでユーザID毎にディレクトリを作成しその中にキャッシュファイルを格納したか ...

PHPの配列でキーの最大値を取得

PHPの配列でキーの最大値を取得したかった。以下で対応する。 [crayon-5 ...

Fatal error: [] operator not supported for stringsの対処

Fatal error: [] operator not supported f ...

var_export

PHPのソースでvar_exportという見慣れない関数があった。 Aファイルか ...