勉強したことのメモ

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

  関連記事

no image
短縮URL作成(管理画面)

error_reporting(E_ALL & ~E_NOTICE); ...

PHPでユニークな文字列の作成

PHPでユニークな文字列を作成したかった。MySQLとかのオートインクリメントの ...

joinとimplode

PHPで配列を結合する時に使う関数。joinとimplode。 元々はなんかのマ ...

PHPで画像のサイズや拡張子等、詳細情報を取得

PHPで画像のサイズや拡張子等、詳細情報を取得する際 いつもググってしまっていた ...

CodeIgniterでCronを実行する方法

CodeIgniterで特定の処理をCronで自動で実行したかった。以下に設定方 ...

imgタグとPHPでグラフ作成

プラグインやライブラリを使わずにグラフを作る 機会があったのでメモ。 ■サンプル ...

pdfからjpg/jpegへ出来るだけ劣化させずに変換

やりたかった事はpdfからjpg画像への変換。 imagemagick使えばすぐ ...

フォームデータを一気に取得

<? error_reporting(E_ALL & ~E_NOT ...

MySQLiでUPDATE文

MySQLiでUPDATE文 ■ソース $mysqli = new mysqli ...

PHPを使えないサーバから使えるサーバーに値を渡す方法

PHPが使えないサーバーから使えるサーバーに値を渡したい場合があった。ajaxと ...