Hide Ads
 Refresh   About   Tools 

PHP rand() Randomosity Tester

+1 +10 +100 +1K +10K +MAX
range: 1-100, data points: 23,434, groups: 45
High / Low / Range / Average
Frequency: 263 / 200 / 63 / 234.34
Rows: 8 / 1 / 7 / 2.22
Frequency
Rows
263
1
262
1
261
1
258
2
256
1
255
1
254
1
252
1
251
1
249
2
248
4
247
4
246
4
245
4
244
4
242
2
241
3
240
3
239
3
238
1
237
1
235
2
234
2
233
1
232
4
231
4
230
3
229
2
228
8
227
1
226
2
225
2
224
3
222
4
220
1
219
3
218
3
217
2
216
1
214
1
213
1
211
1
209
2
206
1
200
1

Test runs: 0Avg run : 0 seconds Test time: 0 seconds Data Save: 0 seconds Test Tools: Restart test: Random range 1 to: 1 2 3 4 5 10 50 100 500 1K 5K 10K 50K 100K Random Generator Method: SQLite ORDER BY RANDOM() PHP rand() PHP mt_rand() PHP random_int() Back to top


About the Randomosity Tester

This page tests the frequency distribution and timing of random number generation via these methods:

Random number results are stored in a test table. The test table is defined as:

CREATE TABLE 'test' ( 'id' INTEGER PRIMARY KEY, 'frequency' INTEGER DEFAULT '0' );

The table is initialized by creating all rows with frequency = 0. The number of rows in the table is defined by the range setting. The current test is set to use range: 1 to 100.

For each random number chosen, the table is updated via:

UPDATE test SET frequency = frequency + 1 WHERE id = :random_number

For SQLite tests, results are individually generated via the SQL call:

SELECT id FROM test ORDER BY RANDOM() LIMIT 1;

Generate more random numbers by clicking a  +  number button to start a test run.

Each test run is limted to ~1.42 seconds.

A Frequency of Frequencies chart displays:

This site was created with Open Source software. Find out more on Github: randomosity-tester v0.2.2

Back to top


Hide Ads