pagetop

BLOG

【php】サーバーCSVデータを生成する

  • HOME

  • BLOG

  • 【php】サーバーCSVデータを生成する

Article

【php】サーバーCSVデータを生成する

PHP

phpをつかって、指定したファイル名で自動的にサーバーにCSVデータを生成する方法をメモします。

 

要件

  • GETで取得したクエリの名前をCSV名にする
  • 登録日とクエリ名を登録する

です。

 

ディレクトリ

実行ファイルと同じディレクトリにCSVフォルダを設置し、その中にCSVを生成します。

 

プログラム

GETで取得したクエリから生成します。

https://sample.com/file/index.php?id_num=12345

この場合12345がファイル名になり、CSVに書き込む情報となります。

<?php
$id_num = $_GET['id_num'] ;
$date = date('Ymdhi');
$file_path="";
$file_dir="csv/";
$file_name=$id_num.".csv";
$data_file = "csv/".$id_num.".csv";

if(false == is_file("$file_path$file_dir$file_name")){ $file_exist = "1"; }
$fp = fopen("$file_path$file_dir$file_name",'a');
if($file_exist){
$data_head = "登録日,クエリ番号,\n";
fwrite($fp,$data_head);
}
$data = "$date,$id_num,\n";
fwrite($fp,$data);
fclose($fp);
//リダイレクト
header("location:end.php");
exit();
?>

生成するCSVデータのディレクトリを設定します。

$file_path="";
$file_dir="csv/";

CSV名をクエリに設定します。

$file_name=$id_num.".csv";
$data_file = "csv/".$id_num.".csv";

CSVファイルを生成します。

$fp = fopen("$file_path$file_dir$file_name",'a');

ヘッダと書き込む情報を設定します。

$data_head = "登録日,クエリ番号,\n";
fwrite($fp,$data_head);

$data = "$date,$id_num_full,\n";
fwrite($fp,$data);

最後にend.phpにリダイレクトします。

header("location:end.php");
exit();

これで以下が生成されます。

csv/12345.csv

中身は

登録日,クエリ番号,
202204201100,12345,

となります。

 

フォームで取得した情報をもとにユニークなCSVファイル生成などに使用できますね。その他色々用途があるので、またの機会にメモします。

Spread the love