Я хочу выбрать случайное значение из массива, но сохранить его уникальным, пока возможно.
Например, если я выбираю значение 4 раза из массива из 4 элементов,выбранное значение должно быть случайным, но каждый раз другим.
Если я выберу его 10 раз из одного и того же массива из 4 элементов, то очевидно, что некоторые значения будут дублироваться.
У меня это есть прямо сейчас, но я по-прежнему получаются повторяющиеся значения, даже если цикл выполняется 4 раза:
$arr = $arr_history = ('abc', 'def', 'xyz', 'qqq');
for($i = 1; $i < 5; $i++){
if(empty($arr_history)) $arr_history = $arr;
$selected = $arr_history[array_rand($arr_history, 1)];
unset($arr_history[$selected]);
// do something with $selected here...
}