PHPのfputcsv()を使用したCSVファイルのエクスポート方法


方法1: 単純な配列を使用してCSVファイルを書き込む

$data = array(
    array('名前', 'メールアドレス', '電話番号'),
    array('John Doe', '[email protected]', '123456789'),
    array('Jane Smith', '[email protected]', '987654321'),
);
$file = fopen('export.csv', 'w');
foreach ($data as $row) {
    fputcsv($file, $row);
}
fclose($file);

この例では、2次元配列のデータをCSVファイルに書き込んでいます。最初の配列はヘッダー行として使用され、その後の配列は各行のデータを表します。ファイルを開き、配列の各要素をfputcsv()関数で書き込み、最後にファイルを閉じます。

方法2: データベースからのデータをCSVファイルに書き込む

$dbHost = 'localhost';
$dbUser = 'username';
$dbPass = 'password';
$dbName = 'database';
$conn = mysqli_connect($dbHost, $dbUser, $dbPass, $dbName);
$file = fopen('export.csv', 'w');
$query = "SELECT * FROM users";
$result = mysqli_query($conn, $query);
while ($row = mysqli_fetch_assoc($result)) {
    fputcsv($file, $row);
}
fclose($file);
mysqli_close($conn);

この例では、データベースからデータを取得し、それをCSVファイルに書き込んでいます。適切な接続情報を使用してデータベースに接続し、クエリを実行して結果を取得します。その後、取得した結果をfputcsv()関数を使用してファイルに書き込みます。

上記の例では、単純な方法とデータベースからのデータをCSVに書き込む方法を示しました。これらは一般的なパターンですが、実際の要件に合わせてカスタマイズすることもできます。また、エラーハンドリングや必要なバリデーションなどの追加機能も考慮する必要があります。