勉強したことのメモ

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でランダムな値を取得するケース諸々

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

フォームからCSVファイルをアップロードしてPHPの配列に格納する方法

formからcsvファイルをアップロードさせて、PHPで色々処理したかった。とり ...

PHPとSQLiteで簡易BBSの作成

PHPとSQLiteの練習で簡易掲示板を作ったのでメモ。   &nbs ...

Fatal error: Cannot redeclare 関数名のエラー

自作関数の名前が被っている場合に出現するエラー。 ↓みたいに書いているとエラー。 ...

PHPバージョンの確認

PHPでバージョンの確認をする際にphpinfo()を 使って調べてたけど、バー ...

ユーザーエージェントからブラウザ名、バージョン、OS名判別

/***判別側***/ //ブラウザ情報の取得 function browser ...

PHPでサイトURLからtitleとRSS用URLを取得

サイトのURLからRSS用URLとサイトタイトルを自動で取得したかった。その方法 ...

no image
PHPで定義した変数の一覧を表示させる

どこで何を定義したか分からなくなった際に 使ったのでメモ。 $array = g ...

curlでPOSTデータ送信

ここで使ったcurlだけど補足とか諸々。 ■curlでPOST 並列処理する際に ...

PHPでアクセスIPからランダム英数字のIDを作成

PHPで掲示板などにあるようなアクセスIPからランダム英数字のIDを作成したかっ ...