BLOG
[PHP]CSVファイルよりランダムで任意の数、抽出する
2017/4/4
抽出対象一覧ファイル(CSVファイル)よりランダムで任意の数、抽出する。
重複は除くようにし、抽出確率は調整(抽出対象一覧ファイルに数が多いほど抽選しやすい)できるようにする。
抽出した一覧は別CSVファイルに出力する。
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 39 40 41 42 43 44 |
<?php // 抽出数 $count = 5; $list = array(); // 読み込みCSVファイル $lines = file('test.csv'); shuffle($lines); foreach ($lines as $line) { if ( ! in_array($line, $list)) { array_push($list, $line); if (count($list) >= $count) { break; } } } // CSVファイルに出力 $file = fopen('test2.csv', 'w'); foreach ($list as $l) { echo $l.'<br>'; if ($file) { fputs($file, $l); } } fclose($file); ?> ・test.csv 111111 222222 222222 222222 333333 444444 555555 666666 777777 888888 |
Tag:PHP