-
Notifications
You must be signed in to change notification settings - Fork 0
Expand file tree
/
Copy pathfaker.php
More file actions
72 lines (58 loc) · 1.56 KB
/
faker.php
File metadata and controls
72 lines (58 loc) · 1.56 KB
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
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
<?php
require_once 'vendor/autoload.php';
function unique_multidimentional_array($array) {
$tempArray = [];
$keyArray = [];
foreach($array as $val) {
$key = $val[0] . $val[1];
if (!in_array($key, $keyArray)) {
$keyArray[] = $key;
$tempArray[] = $val;
}
}
return $tempArray;
}
$faker = Faker\Factory::create();
$usersFile = 'users.csv';
$clubsFile = 'clubs.csv';
$clubMembersFile = 'club_members.csv';
$userRange = 10_000;
$clubRange = 10_000;
$users = [];
for ($i = 1; $i <= $userRange; $i++) {
$user = [];
$user[] = $i;
$user[] = $faker->firstName();
$user[] = $faker->lastName();
$users[$i] = $user;
}
file_put_contents($usersFile, '');
foreach ($users as $user) {
file_put_contents($usersFile, implode(',', $user) . "\n", FILE_APPEND);
}
$clubs = [];
for ($i = 1; $i <= $clubRange; $i++) {
$club = [];
$club[] = $i;
$club[] = $faker->company();
$clubs[$i] = $club;
}
file_put_contents($clubsFile, '');
foreach ($clubs as $club) {
file_put_contents($clubsFile, implode(',', $club) . "\n", FILE_APPEND);
}
$clubMembers = [];
for ($i = 0; $i <= $userRange / 2; $i++) {
$clubMember = [];
$clubMember[] = rand(1, $userRange);
$clubMember[] = rand(1, $clubRange);
$clubMembers[] = $clubMember;
}
$clubMembers = unique_multidimentional_array($clubMembers);
usort($clubMembers, function ($a, $b) {
return [$a[0], $a[1]] <=> [$b[0], $b[1]];
});
file_put_contents($clubMembersFile, '');
foreach ($clubMembers as $clubMember) {
file_put_contents($clubMembersFile, implode(',', $clubMember) . "\n", FILE_APPEND);
}