PHP function that returns
an Array with Unique Random Numbers or Letters. The function receives three arguments: the number of items in array ($nri), the lowest number or letter ($min), and the highest number or letter ($max).
/*
Function to create an array of unique random numbers or letters
Receives 3 arguments:
$nri = number of items in array
$min = the lowest number, or letter
$max = the highest number, or letter
*/
function randomNrLtArray($nri, $min, $max) {
// From: https://coursesweb.net/php-mysql/
// creates an array with values from $min to $max
$arr = range($min, $max);
// randomizes the order of the elements in $arr, extracts and keeps the first $nri items
shuffle($arr);
$arr = array_slice($arr, 0, $nri);
return $arr; // returnns the array
}
- Example: gets an array with 5 random numbers from 1 to 50, and another array with 4 random letters from "A" to "M".
<?php
/*
Function to create an array of unique random numbers or letters
Receives 3 arguments:
$nri = number of items in array
$min = the lowest number, or letter
$max = the highest number, or letter
*/
function randomNrLtArray($nri, $min, $max) {
// From: https://coursesweb.net/php-mysql/
// creates an array with values from $min to $max
$arr = range($min, $max);
// randomizes the order of the elements in $arr, extracts and keeps the first $nri items
shuffle($arr);
$arr = array_slice($arr, 0, $nri);
return $arr; // returnns the array
}
// array with 5 random numbers from 1 to 50
$nrs = randomNrLtArray(5, 1, 50);
// array with 4 random letters from "A" to "M"
$lts = randomNrLtArray(4, 'A', 'M');
// Test
var_export($nrs);
echo '<br/>';
var_export($lts);
?>
Results:
array (0 => 6, 1 => 23, 2 => 42, 3 => 47, 4 => 8)
array (0 => 'J', 1 => 'D', 2 => 'F', 3 => 'G')