Random\Randomizer::shuffleArray

Get a permutation of an array

Description

public array Random\Randomizer::shuffleArray(array $array)

Returns a uniformly selected permutation of the input array.

Each possible permutation of the input array is equally likely to be returned.

Parameters

array

The array whose values are shuffled.

The input array will not be modified.

Return Values

A permutation of the values of array.

Array keys of the input array will not be preserved; the returned array will be a list (array_is_list).

Errors/Exceptions

Examples

Example #1 Random\Randomizer::shuffleArray example

<?php
$r = new \Random\Randomizer();

$fruits = [ 'red' => '🍎', 'green' => '🥝', 'yellow' => '🍌', 'pink' => '🍑', 'purple' => '🍇' ];

// Shuffle array:
echo "Salad: ", implode(', ', $r->shuffleArray($fruits)), "\n";

// Shuffle again:
echo "Another Salad: ", implode(', ', $r->shuffleArray($fruits)), "\n";
?>

The above example will output something similar to:

Salad: 🍎, 🥝, 🍇, 🍌, 🍑
Another Salad: 🍑, 🍇, 🥝, 🍎, 🍌