PHPでcsvファイルを読込み配列に格納し、その中からランダムで1行だけ出力する方法

<?php
// CSVファイル名
$csvFile = 'data.csv';

// 配列にデータを格納するための空の配列を作成
$csvData = array();

// CSVファイルを読み取りモードで開く
if (($handle = fopen($csvFile, 'r')) !== false) {
    // ファイルの各行を読み取り、配列に格納する
    while (($data = fgetcsv($handle, 1000, ',')) !== false) {
        $csvData[] = $data;
    }
    fclose($handle);
} else {
    echo "CSVファイルを開けません。";
}

//配列をシャッフル
shuffle($csvData);

//シャッフルされた配列の一番上のカンマ区切りの一行を表示
echo <<< eof
{$csvData[0][0]}
{$csvData[0][1]}
{$csvData[0][2]}
eof;
?>
PHP
スポンサーリンク
のんびりブログ

コメント

タイトルとURLをコピーしました